我已对视频帧中的关注区域应用了阈值。看来效果很好,结果如下:
我通过鼠标回调函数标记了ROI,然后只需通过以下两行代码获取阈值:
<input type="radio" data="cool" name="cool" checked="checked">
<input type="radio" data="cool" name="cool">
<input type="radio" data="cool" name="cool">
,其中pt1是矩形的左上角,而+3只是为了确保我采用矩形内部而不是矩形边界上的阈值。
我还在车轮内部绘制了一个圆拱形(也可以在图中看到)。这是通过my other question中提供的代码实现的。
现在,我正在观察绘制的拱形下方的圆形拱形上的点。这些点在阈值之内,因此它们的值应仅为0或255:
@GET
@Path("/big-response")
@Produces(MediaType.APPLICATION_JSON)
@ApiOperation(value = "Provides Json information about some etities")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Transfer successful"),
@ApiResponse(code = 400, message = "Bad request"),
@ApiResponse(code = 500, message = "Internal server error")})
public void retrieveTheData() {
输出的txt文件不包含任何0。但是有一些空白,因此可能算作0?
ret_thresh, thresh = cv2.threshold(ROI, 80, 255, cv2.THRESH_BINARY)
gray_frame[pt1[1]+3:pt1[1]+rect_height, pt1[0]+3:pt1[0]+rect_width] = thresh
也:每当我的框架访问失败时添加错误消息时:
frameCount += 1
currentTimestamp = timestamp + frameCount/fps
file = open("myFile.txt", "a+")
file.write(str(currentTimestamp))
circleSegment = get_circle_segment(center_pt, 60, 72//2) #center_pt has been specified via mouse callback, radius is 60 px, radius of drawn arch is 70px
for el in circleSegment:
pixel = gray_frame[el[1]][el[0]] #coordinates are (x,y). But accessing an image is always: first y-coordinates (rows) and then x-coordinates (columns)
#log information
file.write('\t' + str(pixel))
file.write('\n')
file.close()
在我的终端上打印了一些错误消息。因此,我认为图像索引存在问题。 但是我真的看不到this code的问题。