Chu1024 2019-05-07 12:11 采纳率: 0%
浏览 477

新手求教 用sift处理后的图片得到的特征矩阵大小为什么不相同?

刚开始学习图片处理没多久,恳请各位大佬指教。图片已经灰度处理,也用resize统一了图片的尺寸。为什么使用尺度不变特征变换后得到的特征矩阵行数不同?如何处理?

    sift = cv2.xfeatures2d.SIFT_create()
    des_list = []
    index=0
    for image_path in image_paths:
        if index<2:
            im_bgr = cv2.imread(image_path)
            im_gra=cv2.cvtColor(im_bgr,cv2.COLOR_BGR2GRAY)
            im_new=cv2.resize(im_gra,(600,600))
            kpts = sift.detect(im_new)
            kpts, des = sift.compute(im_new, kpts)
            des_list.append((image_path, des))
            print("image file path : ", image_path)
            del im_new,kpts, des
            gc.collect()
            index = index + 1
            print(index)


    descriptors = des_list[0][1]
    for image_path, descriptor in des_list[1:]:
        descriptors = np.vstack((descriptors, descriptor))

index为1时,处理第一张图片矩阵大小是[1739, 12000]。index为2时处理两张图片矩阵大小是[2231, 12000],明显不成倍数。

  • 写回答

1条回答

  • janat945 2019-05-07 12:51
    关注

    index为1时,处理第一张图片矩阵大小是[1739, 12000]。index为2时处理两张图片矩阵大小是[2231, 12000],明显不成倍数。

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料