bakeup
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -96,7 +96,7 @@ class Track:
|
||||
|
||||
self.isCornpoint = False
|
||||
self.imgshape = imgshape
|
||||
self.isBorder = False
|
||||
# self.isBorder = False
|
||||
# self.state = MoveState.Unknown
|
||||
|
||||
'''轨迹开始帧、结束帧 ID'''
|
||||
@ -157,10 +157,12 @@ class Track:
|
||||
def compute_cornpts_feats(self):
|
||||
'''
|
||||
'''
|
||||
# print(f"TrackID: {self.tid}")
|
||||
trajectory = []
|
||||
trajlens = []
|
||||
trajdist = []
|
||||
trajrects = []
|
||||
trajrects_wh = []
|
||||
for k in range(5):
|
||||
# diff_xy2 = np.power(np.diff(self.cornpoints[:, 2*k:2*(k+1)], axis = 0), 2)
|
||||
# trajlen = np.sum(np.sqrt(np.sum(diff_xy2, axis = 1)))
|
||||
@ -182,12 +184,17 @@ class Track:
|
||||
rect[0]: 旋转角度 (-90°, 0]
|
||||
'''
|
||||
rect = cv2.minAreaRect(X.astype(np.int64))
|
||||
rect_wh = max(rect[1])
|
||||
|
||||
|
||||
trajrects_wh.append(rect_wh)
|
||||
trajrects.append(rect)
|
||||
|
||||
self.trajectory = trajectory
|
||||
self.trajlens = trajlens
|
||||
self.trajdist = trajdist
|
||||
self.trajrects = trajrects
|
||||
self.trajrects_wh = trajrects_wh
|
||||
|
||||
|
||||
|
||||
@ -198,12 +205,17 @@ class Track:
|
||||
-最小轨迹长度:trajlen_min
|
||||
-最小轨迹欧氏距离:trajdist_max
|
||||
'''
|
||||
idx1 = self.trajlens.index(max(self.trajlens))
|
||||
|
||||
# idx1 = self.trajlens.index(max(self.trajlens))
|
||||
idx1 = self.trajrects_wh.index(max(self.trajrects_wh))
|
||||
|
||||
trajmax = self.trajectory[idx1]
|
||||
trajlen_max = self.trajlens[idx1]
|
||||
trajdist_max = self.trajdist[idx1]
|
||||
if not self.isCornpoint:
|
||||
idx2 = self.trajlens.index(min(self.trajlens))
|
||||
# idx2 = self.trajlens.index(min(self.trajlens))
|
||||
idx2 = self.trajrects_wh.index(min(self.trajrects_wh))
|
||||
|
||||
trajmin = self.trajectory[idx2]
|
||||
trajlen_min = self.trajlens[idx2]
|
||||
trajdist_min = self.trajdist[idx2]
|
||||
@ -284,7 +296,7 @@ class Track:
|
||||
camerType: back, 后置摄像头
|
||||
front, 前置摄像头
|
||||
'''
|
||||
if camerType=="front":
|
||||
if camerType=="back":
|
||||
incart = cv2.imread("./shopcart/cart_tempt/incart.png", cv2.IMREAD_GRAYSCALE)
|
||||
outcart = cv2.imread("./shopcart/cart_tempt/outcart.png", cv2.IMREAD_GRAYSCALE)
|
||||
else:
|
||||
@ -487,6 +499,14 @@ class doTracks:
|
||||
blist = [b for b in alist]
|
||||
alist = []
|
||||
for btrack in blist:
|
||||
# afids = []
|
||||
# for track in cur_list:
|
||||
# afids.extend(list(track.boxes[:, 7].astype(np.int_)))
|
||||
# bfids = btrack.boxes[:, 7].astype(np.int_)
|
||||
# interfid = set(afids).intersection(set(bfids))
|
||||
# if len(interfid):
|
||||
# print("wait!!!")
|
||||
# if track_equal_track(atrack, btrack) and len(interfid)==0:
|
||||
if track_equal_track(atrack, btrack):
|
||||
cur_list.append(btrack)
|
||||
else:
|
||||
|
@ -155,6 +155,7 @@ class doBackTracks(doTracks):
|
||||
def merge_tracks(self, Residual):
|
||||
"""
|
||||
对不同id,但可能是同一商品的目标进行归并
|
||||
和 dotrack_front.py中函数相同,可以合并,可以合并至基类
|
||||
"""
|
||||
mergedTracks = self.base_merge_tracks(Residual)
|
||||
|
||||
|
@ -47,6 +47,7 @@ class doFrontTracks(doTracks):
|
||||
|
||||
tracks_free = [t for t in tracks if t.frnum>1 and t.is_freemove()]
|
||||
self.FreeMove.extend(tracks_free)
|
||||
tracks = self.sub_tracks(tracks, tracks_free)
|
||||
|
||||
# [self.associate_with_hand(htrack, gtrack) for htrack in hand_tracks for gtrack in tracks]
|
||||
'''轨迹循环归并'''
|
||||
@ -126,6 +127,7 @@ class doFrontTracks(doTracks):
|
||||
def merge_tracks(self, Residual):
|
||||
"""
|
||||
对不同id,但可能是同一商品的目标进行归并
|
||||
和 dotrack_back.py中函数相同,可以合并至基类
|
||||
"""
|
||||
mergedTracks = self.base_merge_tracks(Residual)
|
||||
|
||||
|
@ -165,7 +165,7 @@ class frontTrack(Track):
|
||||
|
||||
'''情况2:中心点向上 '''
|
||||
## 商品中心点向上移动,但没有关联的Hand轨迹,也不是左右边界点
|
||||
condt_b = condt0 and len(self.Hands)==0 and y0[-1] < y0[0] and (not self.is_edge_cornpoint())
|
||||
condt_b = condt0 and len(self.Hands)==0 and y0[-1] < y0[0] and (not self.is_edge_cornpoint()) and min(y0)>self.CART_HIGH_THRESH1
|
||||
|
||||
|
||||
'''情况3: 商品在购物车内,但运动方向无序'''
|
||||
|
Reference in New Issue
Block a user