Winston Lutz cannot detect 15MV BB

I tried running the Winston Lutz Module on images for 6MV and 15 MV. The module can analyze the 6 MV Winston Lutz images but can’t find the BB for 15 MV Winston Lutz images. Is there a possible workaround here?

Here is the error for the 15 MV Winston Lutz images:

C:\Users\USER\PycharmProjects\WinstonLutz\venv\Scripts\python.exe C:\Users\USER\PycharmProjects\WinstonLutz\winstonlutz01.py
Traceback (most recent call last):
File “C:\Users\USER\PycharmProjects\WinstonLutz\venv\lib\site-packages\pylinac\winston_lutz.py”, line 776, in _find_bb
bw_bb_img = np.where(labeled_arr == np.argsort(roi_sizes)[-3], 1, 0) # we pick the 3rd largest one because the largest is the background, 2nd is rad field, 3rd is the BB
IndexError: index -3 is out of bounds for axis 0 with size 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “C:\Users\USER\PycharmProjects\WinstonLutz\winstonlutz01.py”, line 6, in
wl.analyze()
File “C:\Users\USER\PycharmProjects\WinstonLutz\venv\lib\site-packages\pylinac\winston_lutz.py”, line 193, in analyze
img.analyze(bb_size_mm)
File “C:\Users\USER\PycharmProjects\WinstonLutz\venv\lib\site-packages\pylinac\winston_lutz.py”, line 699, in analyze
self.bb = self._find_bb(bb_size_mm)
File “C:\Users\USER\PycharmProjects\WinstonLutz\venv\lib\site-packages\pylinac\winston_lutz.py”, line 791, in _find_bb
raise ValueError(“Unable to locate the BB. Make sure the field edges do not obscure the BB and that there is no artifacts in the images.”)
ValueError: Unable to locate the BB. Make sure the field edges do not obscure the BB and that there is no artifacts in the images.

Here are the RTImages I used both for 6MV and 15 MV:

https://drive.google.com/drive/folders/1gigdnpISnYb-M_ZkISwFmS1OBDKB2VOk?usp=share_link

The images appear to be offset from the CAX and violates the 2cm restriction: Winston-Lutz — pylinac 3.8.0 documentation. Whether the offset is real I don’t know. You can get around this by changing this value in the source code to 30 or whatever you like pylinac/winston_lutz.py at master · jrkerns/pylinac (github.com)

You can also monkeypatch pylinac’s detection conditions. Here’s a gist showing how: patch_detection_conditions.py (github.com)