| 3 | |
| 4 | |
| 5 | def harris(image, opt=1): |
| 6 | # Detector parameters |
| 7 | blockSize = 2 |
| 8 | apertureSize = 3 |
| 9 | k = 0.04 |
| 10 | # Detecting corners |
| 11 | gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) |
| 12 | dst = cv.cornerHarris(gray, blockSize, apertureSize, k) |
| 13 | # Normalizing |
| 14 | dst_norm = np.empty(dst.shape, dtype=np.float32) |
| 15 | cv.normalize(dst, dst_norm, alpha=0, beta=255, norm_type=cv.NORM_MINMAX) |
| 16 | |
| 17 | # Drawing a circle around corners |
| 18 | for i in range(dst_norm.shape[0]): |
| 19 | for j in range(dst_norm.shape[1]): |
| 20 | if int(dst_norm[i, j]) > 120: |
| 21 | cv.circle(image, (j, i), 2, (0, 255, 0), 2) |
| 22 | # output |
| 23 | return image |
| 24 | |
| 25 | |
| 26 | src = cv.imread("chessboard.jpg") |