均匀随机,确保每轮每个只出现一次
| 54 | return dic |
| 55 | |
| 56 | class random_uniform_num(): |
| 57 | """ |
| 58 | 均匀随机,确保每轮每个只出现一次 |
| 59 | """ |
| 60 | def __init__(self, total): |
| 61 | self.total = total |
| 62 | self.range = [i for i in range(total)] |
| 63 | np.random.shuffle(self.range) |
| 64 | self.index = 0 |
| 65 | def get(self, batchsize): |
| 66 | r_n=[] |
| 67 | if(self.index + batchsize > self.total): |
| 68 | r_n_1 = self.range[self.index:self.total] |
| 69 | np.random.shuffle(self.range) |
| 70 | self.index = (self.index + batchsize) - self.total |
| 71 | r_n_2 = self.range[0:self.index] |
| 72 | r_n.extend(r_n_1) |
| 73 | r_n.extend(r_n_2) |
| 74 | else: |
| 75 | r_n = self.range[self.index : self.index + batchsize] |
| 76 | self.index = self.index + batchsize |
| 77 | |
| 78 | return r_n |
| 79 | |
| 80 | def gen(data_file, image_path, batchsize=128, maxlabellength=10, imagesize=(32, 280)): |
| 81 | image_label = readfile(data_file) |