In this example, the author adapted the architecture obtained from training ILSVRC-2011 dataset which consists of 1000 classes with approximately 1.5 million images. And using the pre-trained VGG-16 network, the author fine-tuned the network on PASCAL VOC detection data (20 object classes, and 1 background class) and replaced the original 1000 way classification layer by a randomly initialized 21-way classification layer. Apart from that, the author keep the rest of the CNN architecture remains unchanged. After training of CNN parameters and filter the region proposals based on their IoU value, at the test stage, RCNN uses Selective Search to extract ~300 boxes that likely contain objects and evaluates the ConvNet on each one of them, followed by NMS(non-maximum suppression) within each class.
1, Ellipsis >>> a = np.arange(6).reshape(2,3) >>> a array([[0, 1, 2], [3, 4, 5]]) >>> for x in np.nditer(a, op_flags=['readwrite']): x[...] = 2 * x >>> a array([[ 0, 2, 4], [ 6, 8, 10]]) 2, array or matrix Operator * , dot() , and multiply() : For array , ‘``*``’ means element-wise multiplication , and the dot() function is used for matrix multiplication. For matrix , ‘``*``’ means matrix multiplication , and the multiply() function is used for element-wise multiplication. Handling of vectors (one-dimensional arrays) For array , the vector shapes 1xN, Nx1, and N are all different things . Operations like A[:,1] return a one-dimensional array of shape N, not...
留言
張貼留言