Replace inline comments with docstrings (#12764)
* Add docstrings * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Auto-format by https://ultralytics.com/actions * Add docstrings * Add docstrings * Add docstrings * Add docstrings * Auto-format by https://ultralytics.com/actions * Update plots.py Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> --------- Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> Co-authored-by: UltralyticsAssistant <web@ultralytics.com>
This commit is contained in:
1 parent
41603da162
commit
574331f984
14 files changed
+225
-66
No files matched your search
+28
-9
@@ -67,7 +67,8 @@ class Colors:
|
||||
return (c[2], c[1], c[0]) if bgr else c
|
||||
|
||||
@staticmethod
|
||||
def hex2rgb(h): # rgb order (PIL)
|
||||
def hex2rgb(h):
|
||||
"""Converts hexadecimal color `h` to an RGB tuple (PIL-compatible) with order (R, G, B)."""
|
||||
return tuple(int(h[1 + i : 1 + i + 2], 16) for i in (0, 2, 4))
|
||||
|
||||
|
||||
@@ -225,8 +226,13 @@ def plot_lr_scheduler(optimizer, scheduler, epochs=300, save_dir=""):
|
||||
plt.close()
|
||||
|
||||
|
||||
def plot_val_txt(): # from utils.plots import *; plot_val()
|
||||
# Plot val.txt histograms
|
||||
def plot_val_txt():
|
||||
"""
|
||||
Plots 2D and 1D histograms of bounding box centers from 'val.txt' using matplotlib, saving as 'hist2d.png' and
|
||||
'hist1d.png'.
|
||||
|
||||
Example: from utils.plots import *; plot_val()
|
||||
"""
|
||||
x = np.loadtxt("val.txt", dtype=np.float32)
|
||||
box = xyxy2xywh(x[:, :4])
|
||||
cx, cy = box[:, 0], box[:, 1]
|
||||
@@ -242,8 +248,12 @@ def plot_val_txt(): # from utils.plots import *; plot_val()
|
||||
plt.savefig("hist1d.png", dpi=200)
|
||||
|
||||
|
||||
def plot_targets_txt(): # from utils.plots import *; plot_targets_txt()
|
||||
# Plot targets.txt histograms
|
||||
def plot_targets_txt():
|
||||
"""
|
||||
Plots histograms of object detection targets from 'targets.txt', saving the figure as 'targets.jpg'.
|
||||
|
||||
Example: from utils.plots import *; plot_targets_txt()
|
||||
"""
|
||||
x = np.loadtxt("targets.txt", dtype=np.float32).T
|
||||
s = ["x targets", "y targets", "width targets", "height targets"]
|
||||
fig, ax = plt.subplots(2, 2, figsize=(8, 8), tight_layout=True)
|
||||
@@ -255,8 +265,13 @@ def plot_targets_txt(): # from utils.plots import *; plot_targets_txt()
|
||||
plt.savefig("targets.jpg", dpi=200)
|
||||
|
||||
|
||||
def plot_val_study(file="", dir="", x=None): # from utils.plots import *; plot_val_study()
|
||||
# Plot file=study.txt generated by val.py (or plot all study*.txt in dir)
|
||||
def plot_val_study(file="", dir="", x=None):
|
||||
"""
|
||||
Plots validation study results from 'study*.txt' files in a directory or a specific file, comparing model
|
||||
performance and speed.
|
||||
|
||||
Example: from utils.plots import *; plot_val_study()
|
||||
"""
|
||||
save_dir = Path(file).parent if file else Path(dir)
|
||||
plot2 = False # plot additional results
|
||||
if plot2:
|
||||
@@ -381,8 +396,12 @@ def imshow_cls(im, labels=None, pred=None, names=None, nmax=25, verbose=False, f
|
||||
return f
|
||||
|
||||
|
||||
def plot_evolve(evolve_csv="path/to/evolve.csv"): # from utils.plots import *; plot_evolve()
|
||||
# Plot evolve.csv hyp evolution results
|
||||
def plot_evolve(evolve_csv="path/to/evolve.csv"):
|
||||
"""
|
||||
Plots hyperparameter evolution results from a given CSV, saving the plot and displaying best results.
|
||||
|
||||
Example: from utils.plots import *; plot_evolve()
|
||||
"""
|
||||
evolve_csv = Path(evolve_csv)
|
||||
data = pd.read_csv(evolve_csv)
|
||||
keys = [x.strip() for x in data.columns]
|
||||
|
||||
Reference in new issue
Block a user