自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kupePoem的专栏

think like a poem

  • 博客(579)
  • 资源 (36)
  • 收藏
  • 关注

原创 灰色关联度分析简单示例

年份 | GDP (X₀) | 固定资产投资 (X₁) | 社会消费品零售总额 (X₂) | 进出口总额 (X₃) || 年份 | Δ₁ (X₀'-X₁') | Δ₂ (X₀'-X₂') | Δ₃ (X₀'-X₃') || 年份 | ξ₁ (X₁) | ξ₂ (X₂) | ξ₃ (X₃) || 年份 | X₀' | X₁' | X₂' | X₃' || 社会消费品零售总额 (X₂) | 0.756 | 2 || 固定资产投资 (X₁) | 0.58 | 3 || 影响因素 | 关联度 | 排序 |

2025-07-28 09:26:17 323

原创 模糊综合评估法简单示例

当评价因素本身界限不清晰、评价标准具有主观性、难以用精确的“是”或“否”来判断时(例如:评价“服务质量好”、“环境舒适”、“风险高”),传统精确数学方法就显得力不从心。模糊综合评估法引入“隶属度”的概念,用0到1之间的数值来描述某个对象隶属于某个模糊概念(如“好”、“中”、“差”)的程度,从而更客观、合理地处理这类模糊评价问题。良好(b₂) = 0.4×0.3 + 0.3×0.4 + 0.2×0.3 + 0.1×0.2 = 0.32。设定分值:优秀=100,良好=80,一般=60,较差=40。

2025-07-25 15:20:54 381

原创 OpenAI最新大模型GPT-4o体验之Code Copilot AI编程大模型

ChatGPT4o功能:GPT-4o文本对话(支持联网查询)、Code Copilot(写代码、改bug、算法优化等)、DALL-E AI绘画、AI语音对话(练习英语口语、模拟技术面试)、论文插件Consensus、专职家教(精通语数外,拍照上传即可识别问题,给出权威回答,亦可用于模拟考试)、上传文件、数据分析插件Data Analyst等100+GPTS插件。网址:https://ssas.kupepoem.cn支持OpenAI最新的ChatGPT4o。同时支持PC、手机、平板。

2025-07-24 21:57:27 678 1

原创 AI大模型资源

text{ln\_sav}_{it} = \ln(\frac{\text{城市 } i \text{ 在年份 } t \text{ 的城乡居民储蓄存款余额}{\text{城市 } i \text{ 在年份 } t \text{ 的年末常住人口}})若遇到商店打不开的情况,或有售前、售后、授权码续费保留聊天记录或购买等需求,联系下面微信,备注:ai。gemini-2-5-pro-plus:30次/24h。gemini-2-5-pro:30次/24h。GPT-4-1-mini: 100次/24h。

2025-07-24 20:41:16 640

原创 ANP算法的简单例子

下面我将通过一个简化的ANP例子,详细演示每一步计算过程,两个准则(性能和价格),每个准则包含两个子元素,两个备选方案(手机A和B)。决策意义:ANP通过量化元素间的反馈关系(如性能↔价格),比AHP更适用于复杂网络决策。C1列P1行=0.25:购买价格(C1)影响CPU(P1)的权重。P1列C1行=0.833:CPU(P1)影响购买价格(C1)的权重。1) 性能簇:CPU速度(P1)、内存容量(P2)2) 价格簇:购买价格(C1)、耗电成本(C2)2)性能 → 方案、价格 → 方案(准则影响方案)

2025-07-24 11:37:08 427

原创 AHP算法简单示例

GM_B = (0.143 * 0.333 * 0.2 * 1)^(1/4) = (0.0095)^(0.25) ≈ 0.312 (计算:(1/7)*(1/3)*(1/5)*1 ≈ 0.1429*0.3333*0.2 ≈ 0.00952)GM_Pr = (0.2 * 1 * 0.333 * 3)^(1/4) = (0.2)^(0.25) ≈ 0.669(计算:(1/5)*1*(1/3)*3 = (1/5)*(1/3)*3 = (1/15)*3 = 1/5 = 0.2)这些值反映了他的个人偏好和判断。

2025-07-22 09:39:35 910

原创 QPushButton设置菜单

/ 分离主按钮和菜单按钮。想单击按钮不弹出菜单,以为菜单是自己开发控制的,找了半天没有找到单击触发函数,原来qt中QPushButton可以设置菜单。在Qt中,可以通过QPushButton的setMenu()方法为其添加下拉菜单。3 禁用菜单项:action->setEnabled(false)。4 关联菜单:用button.setMenu(menu)设置菜单。-2菜单项图标:使用action->setIcon()添加图标。3 添加菜单项:使用menu.addAction()添加动作。

2025-05-30 18:18:56 617

原创 C++将地址转换为字符串

3 无前缀处理:需要纯十六进制数字时,使用方法三,但需确保 uintptr_t可用(C++11及以上)。直接利用流输出指针,自动格式化为十六进制并包含 `0x` 前缀。若需不带0x前缀,可将指针转换为 uintptr_t后输出为十六进制。通过C风格函数将指针格式化为字符串,需显式转换为 `void*`。1 默认格式:方法一和方法二生成的字符串通常包含 0x前缀。// 转换为 void* 确保类型正确。

2025-05-27 17:21:01 496

原创 已将析构函数隐式定义为“已删除”错误

在C++中,当联合体(union)的某个成员拥有非平凡的析构函数(如 std::string)时,联合体的析构函数会被隐式删除。2 隐式删除析构函数:若联合体包含需要析构的非平凡类型(如 std::string),编译器无法隐式生成析构函数,导致其被标记为 `= delete`。// 显式调用std::string的析构函数。特殊成员函数:联合体默认的复制/移动操作可能被删除,需手动实现(遵循三/五法则)。// 析构函数:根据标签调用对应成员的析构函数。// 标签,记录当前活跃的成员类型。

2025-05-22 17:38:28 376

原创 多线程环境下结构体赋值是否具有原子性?

对于基本数据类型(如 int、bool),某些情况下单次读/写可能是原子的,但结构体通常包含多个字段,其赋值操作可能涉及多个内存地址的修改,因此一般不具备原子性。1 数据大小:如果结构体的大小超过 CPU 的原子操作支持范围(例如,x86 中 8 字节的 mov 指令是原子的,但更大数据可能分多次操作)。x86/64:自然对齐的 8 字节数据(如 `int64_t`)的读写是原子的,但更大的结构体不保证。ARM:需要显式原子指令(如 LDREX/STREX),默认不保证原子性。// GCC 内存屏障。

2025-05-20 18:22:07 431

原创 bool变量在多线程中使用是否线程安全?

1) 无锁优化:若硬件保证原子性(如x86),可直接用`std::atomic<bool>,默认内存顺序memory_order_seq_cst保证可见性。编译器优化:编译器可能优化掉“无意义”的读取(如循环中重复读取`bool`),需用`volatile`或原子操作禁止此类优化。多线程同时写:若多个线程同时修改bool,即使单次写入是原子的,结果仍可能不确定(最后一次写入生效,但无法保证顺序)。),则不具备原子性,需额外同步。一写多读:单一写线程搭配其他读线程时,若未同步,读线程可能无法及时看到更新。

2025-05-20 17:45:31 407

原创 QImage高效率像素操作的方法

/ 通常为w*4 (32bpp)3 使用QImage::Format_ARGB32_Premultiplied可避免重复预乘运算。1 修改bits()前需调用bits()触发detach(确保深拷贝)。2 直接内存访问(避免pixel/setPixel)预先计算循环边界,使用指针递增代替二维索引。4 对8位索引颜色格式需先转换为直接颜色格式。// 通过位操作访问颜色分量。// 跳过行尾填充字节(如果有)// ...处理行...// 分割为4个水平条带。// 等待所有任务完成。

2025-05-15 17:38:19 486

原创 等经纬度投影下求经纬度的行列号

此实现确保了全球范围的覆盖,适用于需要将经纬度快速映射到网格的应用场景,如地理信息系统和遥感数据处理。该实现将地球的经纬度范围划分为固定分辨率的网格,每个网格对应一个行列号。1 分辨率选择:较小的delta会生成更密集的网格,但需注意浮点精度问题。lon:经度,自动规范到[-180.0, 180.0)。lat:纬度,范围应在[-90.0, 90.0]之间。1 经度规范化:将经度调整到[-180, 180)范围内。delta:网格分辨率(单位:度),必须为正数。a 将经度转换为0到360之间的偏移量。

2025-05-14 15:46:19 357

原创 vs2015多线程编译

4. 菜单栏,"Debug" -> "Options and Settings" -> "Projects and Solutions" -> "VC+ Project Settings" ->"Maximum concurrent C++ compilations" 设置最大C++编译并发线程数,设置为0代表最大的并发线程数。visual studio在编译时可以启动多核并行编译,以减少编译所需时间。1. Solution Explorer导航窗口右键需要并行编译的项目,进入属性页面。

2025-05-13 07:31:09 319

原创 快速排序算法中的Lomuto分区

j=2, 元素 2 ≤ 4→ i=1, 交换 arr[1]和 arr[2] → 数组变为 [3, 2, 7, 5, 1, 4]。j=4, 元素 1 ≤ 4 → i=2, 交换 arr[2]和 arr[4] → 数组变为 [3, 2, 1, 5, 7, 4]。最终基准值 4位于索引 3,左子数组 [3, 2, 1]≤ 4,右子数组 [7, 5]> 4。放置基准值:交换 i+1=3和 high=5→ 数组变为 [3, 2, 1, 4, 7, 5]。

2025-04-14 15:23:07 541

原创 快速排序算法

由于所有元素均大于 2,基准被交换到索引 0,数组变为 [2,5,7,8,6]。分区后,5 < 6被保留在左侧,7 和 8 大于 6,最后交换基准到正确位置,数组变为 [2,5,6,8,7]。分区后,8 > 7 被交换到右侧,基准 7 被放到正确位置,数组变为 [2,5,6,7,8]。此时基准位置 pi=0,递归处理左半部分(空)和右半部分 [5,7,8,6]。对整个数组 [6,5,7,8,2]进行排序,low=0,high=4。三 分步说明(以数组 [6, 5, 7, 8, 2]为例)

2025-04-14 11:13:37 478

原创 两个有序序列合并算法分析

2) 交换片段:将左子数组的 arr[i..mid]与右子数组的 arr[mid+1..j] 交换(使用手摇算法)。// 合并两个有序子数组 arr[left..mid] 和 arr[mid+1..right]- **最坏情况**:每次合并需交换最大片段,时间复杂度 $O(n \log n)$。- **最佳情况**:两个子数组天然有序,时间复杂度 $O(n)$。// 手摇算法交换 arr[a..b] 和 arr[b+1..c]- **空间复杂度**:$O(1)$(原地操作)。

2025-04-11 14:09:23 144

原创 _mm_malloc解析

mm_malloc 是用于内存分配的函数,专为SIMD指令集(如SSE、AVX等)设计,确保分配的内存满足特定字节对齐要求。通过合理使用_mm_malloc,可以显著提升SIMD代码的稳定性和性能,尤其在处理图像数据、科学计算等需要批量操作的场景中效果显著。

2025-04-03 09:45:48 346

原创 四个元素最大值的simd优化

3 数据类型:本示例适用于32位整数,浮点数需改用_mm_max_ps。2 减少指令数:从4次比较减少到2次向量操作。2)第一次移位后:[2, 6, 3, 1]4)第二次移位后:[3,3, 6, 6]5) 比较结果:[6, 6, 6, 6]1)初始向量:[6, 2, 1, 3]3)比较结果:[6, 6, 3, 3]

2025-04-03 09:31:50 405

原创 #pragma omp single 解析

pragma omp single 是 OpenMP(一种用于共享内存并行编程的 API)中的一种工作共享指令,用于在并行区域内指定一个代码块仅由单个线程执行,其他线程会等待该代码块执行完毕后再继续(除非显式取消同步)。1)单线程执行:在并行区域(#pragma omp parallel)内部,标记的代码块会被任意一个可用线程执行(不固定是主线程)。2)#pragma omp single:由任意一个线程执行,且默认有隐式同步。3)独立性:single 块内的变量默认是共享的(除非显式声明为私有变量)。

2025-04-02 09:37:36 533

原创 使用OpenMP并行化优化归并排序算法

4. 最终合并:将 [4,6,7] 和 [5,9] 合并为 [4,5,6,7,9]。2)左子数组继续分解为 [6,4] 和 [7]→ 合并为 [4,6,7];4) 最终合并 [4,6,7] 和 [5,9]→ [4,5,6,7,9]。2)左子任务 [0,1](长度2)触发串行处理 → 合并为 [4,6]。-分割为左 [0,2](6,4,7)和右 [3,4]($9,5$)。1)长度 3 > 2,继续并行分解为 [0,1] 和 [2,2]。3) 右子任务 [2,2] 直接返回 → 合并为 [4,6,7]。

2025-04-02 09:31:00 929

原创 _mm_storeu_si128解析

这是Intel SSE2指令集提供的内在函数(intrinsic),用于将128位SIMD寄存器(__m128i类型)中的数据非对齐存储到内存地址。函数原型:void _mm_storeu_si128(__m128i∗ mem_addr, __m128i a)对齐存储 _mm_store_si128 更快。非对齐存储 _mm_storeu_si128 稍慢。1)不对齐存储:允许存储到任意内存地址(无需16字节对齐)2)网络协议解析(非对齐数据包处理);

2025-04-01 10:48:40 240

原创 块交换递归算法

block_swap_rotate(arr, start, end, d) 处理数组的 [start, end]区间,旋转前 d个元素到末尾。对数组 [1,2,3,4,5,7,8]旋转3位后结果为 [4,5,7,8,1,2,3]。以{1, 2, 3, 4, 5, 6,7, 8}将前3个元素移到末尾为例。1. 将数组分为前`d`个元素(块A)和剩余元素(块B);// 交换右块和左块前right_len个元素。// 交换左块和右块前left_len个元素。d = d % n;1) 交换A和B的前d个元素;

2025-04-01 10:31:20 571

原创 三次反转法(手摇算法)

1 左移k位:修改为reverse(0, k-1) → reverse(k, n-1) → reverse(0, n-1)reverse(arr, k, n-1);2 负数处理:若k<0,转换为等效的正数位移(如左移2位等价于右移3位)。2. 前2个反转 → [4,5,3,2,1]3. 后3个反转 → [4,5,1,2,3]1. 整体反转 → [5,4,3,2,1]2 前k个元素反转:反转前k个元素。

2025-03-31 12:24:05 318

原创 两个有序序列的合并-手摇算法

以数组 [1,4,7,9,2,5,6,8]为例,合并左块 [1,4,7,9]和右块 [2,5,6,8]。7 > 5,找到右块中连续比 7 小的元素(5,6)。左块:[1,4,7,9] 右块:[2,5,6,8]数组变为:[1,2,4,7,9,5,6,8]数组变为:[1,2,4,5,6,7,9,8]数组变为:[1,2,4,5,6,7,8,9]数组:[1,4,7,9,2,5,6,8]

2025-03-31 11:29:43 554

原创 std::countr_zero

std::countr_zero 是 C++20 标准引入的位操作函数,用于计算无符号整数的二进制表示中末尾零(Trailing Zeros)的数量。旧代码可继续使用 __builtin_ctz,但需自行处理 x=0 的情况。通过 std::countr_zero,C++ 提供了一种高效且安全的位操作工具,适用于从底层系统编程到算法优化的广泛场景。若 x = 0,返回 T 的位数(例如 32 对应 uint32_t)。输入为 0 时,返回类型的位数(如 8 位类型返回 8),无未定义行为。

2025-03-29 20:29:17 549

原创 归并排序算法的非递归实现

代码的关键点在于正确控制子数组的大小和合并的边界条件,确保所有元素最终被合并排序。通过临时数组合并两个有序区间$[left, mid]和[mid+1, right]。1) 合并[5,6,7,8]和[2]$→ $[2,5,6,7,8]$1) 合并[5,6]和[7,8]→ [5,6,7,8]二 算法步骤(以数组[6,5,7,8,2]$为例)1) 合并[6]和[5] → [5,6]2) 合并[7]和[8] → [7,8]3) 数组变为:[5,6,7,8,2]2) 数组变为:[5,6,7,8,2]

2025-03-29 20:15:13 498

原创 _mm_blend_ps解析

mm_blend_ps 通过立即数掩码高效混合向量元素,适用于需静态确定数据源的 SIMD 优化场景。则结果向量为 { a[0], a[1], b[2], b[3] } → {1.0, 2.0, 13.0, 14.0}1)_mm_shuffle_ps 通过掩码重排元素,功能更复杂(支持跨通道复制),但需要更多时钟周期。2)_mm_blendv_ps 使用向量掩码(非立即数),掩码可动态计算,灵活性高但效率略低。3)_mm_blend_ps 立即数掩码,编译时确定,效率更高。

2025-03-28 10:44:23 470

原创 两个有序序列合并-双指针法

每次比较 arr1[i]和 arr2[j],将较小值放入结果数组。选择更小的 0,结果变为 [0],指针 j后移。选择 1,结果变为 [0,1],指针 i 后移。选择 2,结果变为 [0,1,2],指针 i后移。2 比较 arr1[0]=1和 arr2[1]=4。arr1: [1, 2, 3, 6, 9] 指针i=0。arr2: [0, 4, 5, 7, 8] 指针j=0。1 比较 arr1[0]=1和 arr2[0]=0。3 比较 arr1[1]=2和 arr2[1]=4。

2025-03-28 10:31:16 552

原创 _mm_blendv_ps解析

mm_blendv_ps 是 Intel SSE4.1 指令集 中的一条 SIMD 指令,用于对两个单精度浮点数向量(128 位)进行条件混合操作。其核心功能是:根据掩码(mask)向量的值,从两个输入向量中选择对应的元素组合成新向量。掩码通常通过比较指令生成(如 _mm_cmplt_ps、_mm_cmpgt_ps),或手动构造(如 _mm_set1_ps(-0.0f))。避免频繁生成掩码,尽量复用。

2025-03-27 11:46:43 372

原创 合并两个有序序列—逆向双指针

逆向双指针是一种常用于处理两个有序序列的高效算法技巧,其核心思想是从序列的末尾开始遍历,避免覆盖有效数据或多次移动元素。1)合并两个有序数组(如 nums1 和 nums2,其中 nums1 尾部有预留空间)。// 处理nums2剩余元素(无需处理nums1剩余,因为它们已在正确位置)1)比较 nums1[i] 和 nums2[j],将较大值放入 nums1[k]。3)处理剩余元素:若 nums2 有剩余元素,直接复制到 nums1 头部。i 指向第一个序列有效元素末尾(如 nums1 的最后一个元素)

2025-03-27 11:39:58 1298

原创 _mm_cmpgt_epi8 和_mm_cmpgt_epi32 详解

mm_cmpgt_epi8适用于细粒度(字节级别)的有符号整数比较_mm_cmpgt_epi32,适用于大范围(32 位整数)的有符号数值比较。若 a = [100, -200, 300, 400],b = [50, -100, 300, 0],则结果为 [0xFFFFFFFF, 0x00000000, 0x00000000, 0xFFFFFFFF]。若 a = [10, -5, 3, ...],b = [5, -3, 3, ...],则结果为 [0xFF, 0x00, 0x00, ...]。

2025-03-26 09:48:37 292

原创 数组子序列冒泡比较的SIMD优化

使用_mm_loadu_si128加载每块中连续的4个整数(128位寄存器),通过_mm_cmpgt_epi32比较对应元素大小,生成掩码。用_mm_blendv_epi8根据掩码混合两个块的数据:将较大值保留在块i+1,较小值留在块i,最后将结果写回内存。若数组按16字节对齐,改用_mm_load_si128和_mm_store_si128提升加载/存储效率。依次遍历每对相邻块(块i与块i+1),若块i+1中某位置元素大于块i的对应位置元素,则交换二者。// 处理剩余不足4个的元素。

2025-03-26 09:38:59 1100

原创 _mm_blendv_epi8解析

mm_blendv_epi8是 Intel SIMD 指令集(SSE4.1 引入)中的一个函数,用于按字节(8 位)条件混合两个 128 位向量的内容。通过 _mm_blendv_epi8,开发者可以高效实现基于条件的逐字节数据选择,避免分支预测开销,提升 SIMD 代码性能。根据掩码(mask)向量的每个字节的最高位,选择两个输入向量(a和 b)对应字节的值。mask:控制混合的掩码向量(128 位,每个字节的最高位决定选择 a 或 b)。如果掩码字节的最高位为 0,则选择第一个向量 a的对应字节。

2025-03-25 16:27:48 352

原创 数组子序列比较的SIMD优化

给定数组 [6, 5, 7, 8, 2, 9],子序列间隔为3,可将其平均分为前3个和后3个元素。仅更新有效元素(前3个和后3个),忽略填充值。将前3个和后3个元素加载到两个128位向量(__m128i),填充第四个元素为0。分割数组:前半为 [6, 5, 7],后半为 [8, 2, 9]。2) 掩码混合:利用 _mm_blendv_epi8 快速选择保留的值。3) 通过SSE优化,将逐元素比较与交换转化为向量操作,提升了计算效率。结果:[6, 2, 7, 8, 5, 9]。// 根据掩码混合向量。

2025-03-25 15:55:57 861

原创 归并排序算法

4)最终合并 [5 6 7] 和 [2 8]→ [2 5 6 7 8]。3) 合并右半部分 [8] 和[2]→ 合并为 [2 8]。2)合并:将相邻有序子数组合并为一个有序数组,直到全部合并。2) 合并 [5 6] 和 [7] → [5 6 7]。[6 5 7] 和[8 2]。1)合并 [6]和 [5] → [5 6]。二、分步演示(数组[6 5 7 8 2])2)第2层分解左半部分 [6 5 7]3)第2层分解右半部分 [8 2]

2025-03-22 19:57:56 343

原创 Ciura序列

2) 后续增量可通过最后一个元素乘以2.25生成(如:701*2.25=1577,1577*2.25=3548...)。1)经验证最优的初始序列为:[1, 4, 10, 23, 57, 132, 301, 701]3)时间复杂度约为O(n^{3/2}),优于传统希尔排序的O(n^2)。3)性能优化:Ciura序列在中等规模数据(n ≤ 10^6)表现最佳。1)逆序使用序列:必须从最大间隔开始递减。

2025-03-22 19:24:39 221

原创 使用OpenMP实现希尔排序并行化

omp_set_num_threads(物理核心数/2);// 小数据使用单线程。1)分层并行:不同gap阶段顺序执行,同一gap内的子数组分组并行处理。2)数据独立性:同一gap下不同子数组间无重叠元素,天然支持并行。omp_set_num_threads(物理核心数);1)必要性:不同子数组的排序耗时差异大(元素数量不同)。3)负载均衡:动态调度解决不同子数组计算量不均的问题。// 并行区域:每个线程处理不同子数组。// 生成Ciura序列(含动态扩展)

2025-03-21 10:40:33 784

原创 希尔排序中的Hibbard序列

递推公式:每次k增加1,计算 h_{k+1}=2^{k+1}-1。while ((1 << k) - 1 < n) { // 1<<k等价于2^k。作为希尔排序的步长(间隔序列),用于将数据分为多个子序列进行插入排序。其中k从1开始递增,序列为:1, 3, 7, 15, 31, 63, …1)最坏情况:O(n^{3/2}),优于原始希尔排序的O(n^2)。起始条件:k=1,对应h_1=2^1-1=1。// 找到最大的k使得2^k -1 < n。

2025-03-21 10:02:11 430

原创 希尔排序为啥能降低时间复杂度?

最终,希尔排序在大多数实际场景中显著优于插入排序,时间复杂度可降至 O(n log n) 至 O(n^{4/3}) 之间,具体取决于间隔序列的设计。例如,Hibbard间隔保证每次排序后,元素的移动步长呈指数级缩小,有效降低总操作次数。希尔排序通过分阶段的子序列插入排序,逐步减少元素与目标位置的偏差,从而降低整体比较和移动次数。希尔排序通过引入间隔(gap)将数组分成多个子序列,逐步缩小间隔直至为1。例如,若元素需从位置51移动到位置1,在间隔为50时,一步即可到位。最坏 O(n^{3/2})。

2025-03-20 09:32:33 286

opengl es1.1 NDK 旋转的立方体

opengl es1.1作的旋转立方体的demo。环境eclipse+ndk+android。大家可以学习一下。

2014-11-11

Hyperion Tools

进行Hyperion数据的预处理,生成envi标准文件,去条带等。

2013-08-01

LFW数据集主要测试人脸识别的准确率

LFW数据集主要测试人脸识别的准确率,该数据库从中随机选择了6000对人脸组成了人脸辨识图片对,其中3000对属于同一个人2张人脸照片,3000对属于不同的人每人1张人脸照片。测试过程LFW给出一对照片,询问测试中的系统两张照片是不是同一个人,系统给出“是”或“否”的答案。通过6000对人脸测试结果的系统答案与真实答案的比值可以得到人脸识别准确率。 这个集合被广泛应用于评价 face verification算法的性能。

2020-02-26

cfp-dataset.zip

CFP:500个身份,每个身份有10个正脸,4个侧脸。评估方案:frontal-frontal (FF) and frontal-profile (FP) 人脸验证,有十个文件夹,每个文件夹有350个相同人和350个不同人。本文用CFP-FP进行挑战。这个是验证集数据。

2020-02-26

lfw(dataset+pairs).zip

LFW数据集主要测试人脸识别的准确率,该数据库从中随机选择了6000对人脸组成了人脸辨识图片对,其中3000对属于同一个人2张人脸照片,3000对属于不同的人每人1张人脸照片。测试过程LFW给出一对照片,询问测试中的系统两张照片是不是同一个人,系统给出“是”或“否”的答案。通过6000对人脸测试结果的系统答案与真实答案的比值可以得到人脸识别准确率。 这个集合被广泛应用于评价 face verification算法的性能。

2020-02-26

AgeDB_n.zip

agedb数据,用于深度学习测试数据,16488张图片,标签有年龄,性别等消息。 AgeDB包含16,488个各种名人的图像,如演员,作家,科学家,政治家,每个图像都注明了身份,年龄和性别属性。 共存在568个不同的科目。 每个科目的平均图像数为29。最低和最高年龄分别为1和101。每个科目的平均年龄范围是50.3岁。

2020-02-26

directx实现曲面细分

directx11实现曲面细分的简单示例程序。环境win8.1,vs2013。

2014-08-14

Google Save All Resources 插件

要保存网站内容,一种做法是直接右键另存为整个网页。虽然有时网页也能正常运行,但不可避免地丢失了网站文件夹结构。当然,你也可以在Sources中挨个文件地另存为,然后重新建立文件夹结构。今天给大家推荐一款扩展,可以很好的保留目录结构。 1、下载安装扩展。 2、打开需要下载保存的网站并按快捷键F12打开开发者工具。 3、翻到最后一个选项选择resourcessaver,点击Save All Resources即可

2020-10-08

遥感所遥感概论考研真题

中科院遥感应用所遥感概论考研的真题,还有考研大纲,复习资料等等。

2013-09-30

envi散点图扩展补丁

envi散点图扩展补丁,envi4.7与envi5.0测试过了,均可用

2012-11-12

win32 opengl的例子

opengl1.0 win32的一些例子,完全是win32底层写,只依赖基本的OpenGL库,win32创建窗口 比较底层适合学习

2020-08-31

insightface_distill.rar

人脸识别蒸馏代码

2021-05-07

ConsoleApplication1.rar

用于人脸对齐的c++代码,把斜着的脸变换为正脸

2021-05-07

freeglut-3.0.0 - 副本.zip

freeglut,版本3.0.0,源码,vs2015 sln文件和demo程序。Freeglut是Glut库(OpenGL Utility Toolkit,OpenGL实用工具包)的免费开源替代品。它是由Pawel W. Olszta在1999年12月创建,最新版本为2015年3月的3.0版本。

2020-08-29

cfppairsff.txt

CFP:500个身份,每个身份有10个正脸,4个侧脸。评估方案:frontal-frontal (FF) and frontal-profile (FP) 人脸验证,有十个文件夹,每个文件夹有350个相同人和350个不同人。本文用CFP-FP进行挑战。这个验证集cfp_ff pairs.

2020-02-26

opengl使用unity3d中的lightmap

opengl使用unity3d中的lightmap

2015-01-07

unity3d脚本

将unity3d中的模型导出到obj文件,并有让模型旋转的脚本。

2015-01-07

cfppairsfp.txt

CFP:500个身份,每个身份有10个正脸,4个侧脸。评估方案:frontal-frontal (FF) and frontal-profile (FP) 人脸验证,有十个文件夹,每个文件夹有350个相同人和350个不同人。本文用CFP-FP进行挑战。这个验证集cfp_fp pairs.

2020-02-26

GIS图标下载

GIS图标,包括arcinfo软件,supermap软件,mapx软件等知名软件的图标。

2014-01-09

WebFace260M.pdf

本文介绍一个大规模的人脸识别数据集:WebFace260M,由 4M identities(身份)和 260M 人脸组成,为百万级深度人脸清洗和识别提供了很好的资源。

2021-10-12

Qt4.8.4和Echarts5.3.3绘制图表例子

Qt4.8.4和Echarts5.3.3绘制图表例子。 ECharts,商业级数据图表,它是一个纯JavaScript的图标库,常用的图表形式,如折线图、柱状图,饼状图、雷达图等,都可绘制,而且效果好看。这是做Web前端的,经常会用到的工具。这里我就不细说ECharts,一则这个官网教程很详细,再则我也是个门外汉,只会简单的。而Qt要显示web部分的东西,肯定是要用到QtWebkit(Qt4)或者 QtWebEngine(Qt5),这个视版本而定。 ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

2022-09-17

echarts-5.3.3

ECharts,商业级数据图表,它是一个纯JavaScript的图标库,常用的图表形式,如折线图、柱状图,饼状图、雷达图等,都可绘制,而且效果好看。这是做Web前端的,经常会用到的工具。这里我就不细说ECharts,一则这个官网教程很详细,再则我也是个门外汉,只会简单的。而Qt要显示web部分的东西,肯定是要用到QtWebkit(Qt4)或者 QtWebEngine(Qt5),这个视版本而定。 ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

2022-09-17

Least-squares estimation of transformation parameters between tw

Least-squares estimation of transformation parameters between two point patterns。 相似变换相当于等距变换和均匀缩放的一个复合,即为: 左上角2*2矩阵为旋转部分,右上角为平移因子。它有四个自由度,即旋转、x方向平移、y方向平移和缩放因子s。相似变换后长度比、夹角保持不变,其与相似三角形类似。 虽然相似变换和仿射变换的变换矩阵一样,但是其定义不一样。因为相似变换中不存在倾斜变换(也叫错切变换、剪切变换、偏移变换)、翻转变换,而仿射变换中存在。

2022-06-23

国际标准的数据库设计说明书框架

国际标准的数据库设计说明书框架,

2022-03-26

sqlite3.38.0

   SQLite是一款轻量级的、基于文件的嵌入式数据库,实现自包容、零配置、支持事务的SQL数据库引擎。与其他数据库管理系统不同,SQLite 的安装和运行非常简单,在大多数情况下,只要确保SQLite的二进制文件存在即可开始创建、连接和使用数据库。第一个Alpha版本诞生于2000年5月,直到今天已经成为最流行的嵌入式数据库,包括Google在内的许多公司在其桌面软件中亦使用SQLite存储用户数据,由此看来,其稳定性毋庸置疑。

2022-03-12

C++序列化和反序列化

​ 很多人都知道rapidjson这个json库,大家也都知道他的高效,可是你一定也对他的使用方法,函数API接口感受到非常不适应,你一定非常怀念使用java和C#对一个实体类的那么轻松加简单的直接json序列化,本篇博客使用一个RapidJsonHelper类,将帮你实现对一个C++实体类的的序列化和反序列化。rapidjson的版本是1.1。 ​

2022-03-10

roc曲线绘制2.rar

人脸识别roc曲线绘制python脚本代码

2021-05-07

QComboBox实现下拉框check勾选

QComboBox实现下拉框check勾选

2021-12-02

linux-5.15.6.tar.xz

linux源码 5.15.6,不需要多说了,大家研究

2021-12-03

linux5.8.1中的kfifo

linux5.8.1中的kfifo,无锁队列,用于单生产者和单消费者的多线程

2021-12-03

windows Xshell6Portable_50151.zip

Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。 Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。

2021-12-04

用于服务器和客户端之间传输文件的Xftp6.rar

xftp是一个功能强大的sftp、ftp 文件传输软件。使用了 xftp 以后,ms windows 用户能安全地在 unix/linux 和 windows pc 之间传输文件。简单易操作的界面很适合开发者使用。

2021-12-04

insightface.rar

insightface老版本,供大家学习使用。

2021-09-09

Memory Reordering Caught in the Act

When writing lock-free code in C or C++, one must often take special care to enforce correct memory ordering. Otherwise, surprising things can happen.

2021-10-19

insightface 2020年9月份的版本

insightface 2020年9月份的版本

2021-09-09

mxnet-memonger.pdf

mexnet memonger论文

2021-09-01

testmodel2_verifypair_gpu_outfeature.py

用于人脸识别图片的feature生成,并以txt文件存储起来。

2021-05-07

dvgg2 - 副本.py

下载vggface2脚本代码 python

2021-05-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除