(self, pixels: np.ndarray, time: np.ndarray)
| 80 | return cuts |
| 81 | |
| 82 | def push(self, pixels: np.ndarray, time: np.ndarray): |
| 83 | if self.pixels is None: |
| 84 | self.pixels = pixels |
| 85 | self.time = time |
| 86 | |
| 87 | return self._inference( |
| 88 | np.stack( |
| 89 | ( |
| 90 | np.tile(np.expand_dims(pixels[0], axis=0), (100, 1, 1, 1)), |
| 91 | np.concatenate( |
| 92 | ( |
| 93 | np.tile(np.expand_dims(pixels[0], axis=0), (25, 1, 1, 1)), |
| 94 | pixels[:75], |
| 95 | ), |
| 96 | 0, |
| 97 | ), |
| 98 | ) |
| 99 | ), |
| 100 | np.stack( |
| 101 | ( |
| 102 | np.tile(np.expand_dims(time[0], axis=0), (100,)), |
| 103 | np.concatenate( |
| 104 | (np.tile(np.expand_dims(time[0], axis=0), (25,)), time[:75]), 0 |
| 105 | ), |
| 106 | ) |
| 107 | ), |
| 108 | ) |
| 109 | else: |
| 110 | # `self.time` is set in lockstep with `self.pixels` above, so it is non-None here. |
| 111 | assert self.time is not None |
| 112 | c1 = self.pixels |
| 113 | c2 = pixels |
| 114 | |
| 115 | t1 = self.time |
| 116 | t2 = time |
| 117 | |
| 118 | self.pixels = pixels |
| 119 | self.time = time |
| 120 | |
| 121 | return self._inference( |
| 122 | np.stack( |
| 123 | (np.concatenate((c1[25:], c2[:25]), 0), np.concatenate((c1[75:], c2[:75]), 0)) |
| 124 | ), |
| 125 | np.stack( |
| 126 | (np.concatenate((t1[25:], t2[:25]), 0), np.concatenate((t1[75:], t2[:75]), 0)) |
| 127 | ), |
| 128 | ) |
| 129 | |
| 130 | |
| 131 | class TransnetV2Detector(SceneDetector): |
nothing calls this directly
no test coverage detected