Uniform LBP(均匀模式LBP)跳变小于等于2的数

1 篇文章 0 订阅
1 篇文章 0 订阅

Uniform LBP均匀LBP跳变小于等于2的数,用python实现,代码如下:

import numpy as np
l = np.zeros(58, dtype=int)
m = []
a = -1
for i in range(256):
    bit = '{:08b}'.format(i)  # 二进制化
    arry = []  # 二进制生成数组
    count = 0  # 计数变化次数
    # 把字符串变为数组方便统计变化次数
    for x in range(len(bit)):
        arry.append(int(bit[x]))
    #print(arry)
    first = arry[0]  # 数组第一个为first,与之后的比较
    for j in range(1, len(arry)):
        if arry[j] != first:  # 如果变化,计数单位加1
            count += 1
            first = arry[j]  # 并且把变化的值重新赋值
    #print(count)
    if count <= 2:  # 如果变化次数大于3,则归为59位
        a += 1
        #print(i)
        l[a] = i
print(l)

运行结果:

[  0   1   2   3   4   6   7   8  12  14  15  16  24  28  30  31  32  48 56  60  62  63  64  96  112  120  124  126  127  128  129  131 135  143  159  191  192  193  195  199  207  223  224  225  227  231  239  240  241  243  247  248  249  251  252 253  254  255]

上面这些数就是跳变结果小于等于2的数,共有58个 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【项目介绍】 毕业设计基于多特征融合的微表情识别python源码+部署说明.zip 该资源内项目代码都是经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶, 或者实际项目借鉴参考! 当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。如果基础还行,也可在此代码基础上进行修改,以实现其他功能。 环境说明: python 3.6.10 numpy 1.19.0 pandas 1.0.1 sklearn 0.22.1 cv2 3.3.1 scipy 1.4.1 tensorflow 2.2.0 dlib 19.6.1 imutils 0.5.3 pillow 7.2.0 xlrd 1.2.0 CUDA None 1.Local_weighted_mean_register.py 用于裁剪以及配准人脸,包含类LWMRegister(standard_face, predictor_path, width=192, height=192, offset=24) standard_face: 作为标准人脸的图像,不用经过裁剪 predictor_path: dlib预训练人脸predictor所在地址 width, height: 目标图像的宽与高 offset: 为了避免映射超出图像边缘,在配准前给图像边缘留出的空余 使用方法:调用LWMRegister.run(face_seq, n = 6, amplify = 1.2, aligned=False) face_seq: 需要裁剪与配准的人脸图像序列 n: 计算LWM时采用的相邻点个 amplify: 在配准时对图像进行一定比例的放大,避免映射超出图像边缘 aligned: True表示face_seq已经经过裁剪、对齐,False表示没有经过 2.Eulerian_video_magnification.py 用于对视频(图像序列)进行动作放大,包含类EVM(fps=200, low=0.2, high=2.4, level=6, alpha=8, lam_c=16, iq_reduce=0.1) fps: 视频的帧率 low, high: 动作放大的频率区间 level: 构建拉普拉斯金字塔的层 alpha: 动作放大的倍 lam_c: 参,用于调节被放大的动作大小的上限deta iq_reduce: 程序将图像转到YIQ颜色空间进行动作放大,iq_reduce表示对IQ通道的缩放倍,缩小IQ可以减小噪声 使用方法: 调用EVM.run(img_seq) img_seq: 被放大的图像序列 3.Temporal_interpolation_model.py 用于对图像序列进行时域插值,实现帧的上采样或下采样,包含类TIM() 使用方法:调用TIM.run(image_seq, target_length) image_seq: 需要被插值的图像序列 target_length: 目标帧 4.Features_extraction.py 用于提取图像序列的特征,包括LBP-TOP、3DHOG、HOOF 使用方法:调用函 get_ep_features(ep, uniform_dict = None, feature='LBP-TOP', t_times=4, y_times=4, x_times=4, x_radius = 1, y_radius = 1, t_radius = 4, xy_neighbor=8, xt_neighbor=8, yt_neighbor=8, xy_bins = 8, xt_bins = 12, yt_bins = 12, bins=8) ep: 提取特征的图像序列 uniform_dict: 用于减小LBP-TOP特征维度,只有LBP-TOP特征需要 feature: 可选'LBP-TOP', '3DHOG', 'HOOF' t_times, y_times, x_times: 将图像序列在t, y, x三个维度分成多少子块提取特征,推荐LBP-TOP的t_times=1 x_radius, y_radius, t_radius, xy_neighbor, xy_neighbor, yt_neighbor: LBP-TOP参 xy_bins, xt_bins, yt_bins: 3DHOG参 bins
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值