这篇教程介绍了如何使用Python和OpenCV从扫描书籍页面中提取单个单词。教程首先将图像转换为灰度并应用阈值来增强文本和页面背景之间的对比度。然后,它使用OpenCV函数检测文本行并按其在页面上的位置对其进行排序。最后,它将单词及其对应的坐标存储在一个数组中,以便于通过选择数组中相应的项目来显示页面上的任何单词。
文章介绍了三种简化JOIN语法的方法:外键属性化、同维表互联和子表集合化。外键属性化将外键字段视为维度表中的对应记录,从而简化JOIN语句。同维表互联利用主键相同,记录一一对应的特点,将两个表视为一个表进行操作。子表集合化将子表视为主表的一个字段,通过集合操作简化JOIN和GROUP BY语句。
这是一份包含许多 JavaScript 问题的清单,涵盖基础到进阶的知识点,旨在帮助开发者测试、复习 JavaScript 知识或准备面试。问题下方有答案,可以通过点击展开查看。问题涵盖了变量提升、作用域、事件传播、原型、类型强制、异步编程、生成器函数、代理对象、私有变量等方面,并且会定期更新。
llama3.np 是 Llama 3 模型的纯 NumPy 实现。为了实现精确的实现,作者运行了由 Andrej Karpathy 训练的 stories15M 模型。该项目提供了英文和韩文版本的详细说明,并包含了使用方法、引用方式、参考文献以及许可证信息。
该项目是一个布拉格天文钟的模拟器,该钟最初安装于1410年,至今仍在运行。真实的钟表被设计成在布拉格的特定纬度(约50°N)运行。而该模拟器可以设置在地球上的任何位置,可以显示当前时间,也可以设置特定时间来查看时间是如何显示的。模拟器的指针、小时刻度盘、太阳、月亮和黄道轮的定位默认使用计算机时钟和现代天文计算,但也可以模拟机械钟计时。
该文章讨论了在llama.cpp项目中,jart 提交了一个拉取请求,重写了 CPU 的 silu 和 softmax 函数。重写的函数使用了llamafile的矢量化expf()函数,相比之前的短[65536]查找表,可以更准确地计算 softmax 和 silu。新函数支持 aarch64 和 sse2+,最坏情况下的舍入误差为 2 ulp。作者还编写了 avx2 和 avx512 实现,但与 sse2+fma 相比,它们没有提供太多优势,代码复杂性也不值得。在 AMD Ryzen 9 5950X 和 M2 Ultra 上,SOFT_MAX 比主分支快约 1.5 倍,包含 AVX2 后优势增加到 1.9 倍,znver4 上包含 avx512 后优势高达 2.1 倍。
Node.js的LDAP客户端和服务器API项目已停用。项目维护者James Sumners宣布,由于缺乏时间和受到网络暴力威胁,他决定停止维护该项目。他建议用户使用其他更适合LDAP操作的语言,例如Go语言,来编写网关。
Tarsier是一个为网页交互代理设计的视觉工具,它可以通过括号和ID标记网页上的可交互元素,并提供OCR算法将网页截图转换为结构化字符串。Tarsier支持多种OCR服务,并提供详细的使用指南和示例。
Quary是一个面向工程师的开源商业智能工具,它允许工程师连接到数据库,编写SQL查询以转换、组织和记录数据库中的表,并创建图表、仪表板和报告。Quary支持多种数据库,并允许工程师定义和管理模型、图表、仪表板和报告等资产。
parseback是一个纯Lua库,用于解析LuaJIT的FFI ctype对象。由于LuaJIT的FFI缺乏内省功能,parseback通过分析ffi.typeinfo()提供的信息,以Lua table、C声明和Graphviz图表的形式重建ctype对象的描述。
Goldboot 是一款构建真实硬件机器镜像的工具,可以帮助用户实现接近不可变基础设施的目标。用户可以通过声明式配置文件定义机器配置,Goldboot 使用该配置在本地机器或 CI 平台上构建镜像,生成的镜像可以通过 USB 或 PXE 启动部署到硬件。Goldboot 类似于 Docker 和 Packer 的混合体,但它构建的是真实硬件的镜像,而不是容器或虚拟机。这些镜像包含操作系统、应用程序、软件补丁和配置,所有内容都打包在一个易于部署的包中。
Glance是一个自托管的仪表盘,可以将所有订阅源集中在一处。它支持RSS订阅、Subreddit帖子、天气、书签、YouTube视频、日历、股票、iframe、Twitch频道和GitHub发布等多种小部件。Glance针对移动设备进行了优化,速度快,重量轻,JS代码极少,没有臃肿的框架,依赖项非常少。
Glider是一款开源电子墨水显示器,专注于低延迟和高刷新率。它支持具有并行接口的电泳显示面板,包括单色和彩色滤光片阵列(如Kaleido)彩色屏幕。Glider具有极低的处理延迟(小于20微秒),支持二进制、4级灰度和16级灰度输出模式,以及优化的二进制和4级灰度驱动模式。此外,它还提供混合自动二进制和16级灰度驱动模式。
Model Explorer是一款直观的模型图可视化工具,它以分层方式组织模型操作,用户可以动态地展开或折叠这些层次。Model Explorer还提供了丰富的功能来帮助模型探索和调试,包括突出显示输入和输出操作、在节点上叠加元数据、在交互式弹出窗口中显示层、执行搜索、显示相同的层、GPU加速图形渲染等等。Model Explorer目前支持TFLite、TF、TFJS、MLIR和PyTorch(导出程序)模型格式,并为开发人员提供了一个扩展框架,可以轻松地添加对其他格式的支持。
该项目将 Kolmogorov-Arnold 网络 (KAN) 的创新架构扩展到卷积层,将卷积的经典线性变换更改为每个像素中可学习的非线性激活。与传统卷积网络相比,KAN 卷积网络需要的参数明显更少,这在处理大型数据集和复杂模型时具有潜在优势。虽然初步评估结果尚未显示出显著的性能提升,但随着模型和数据集复杂性的增加,预计 KAN 卷积网络的性能将得到提升。
Pico是一个开源的Ngrok替代方案,旨在服务生产流量并易于托管(尤其是在Kubernetes上)。Pico 可以用于暴露客户网络中的服务、构建自带云 (BYOC) 服务或连接到物联网设备。代理服务器可以作为节点集群托管,以实现容错、扩展和零停机部署。上游服务连接到 Pico 并注册端点。然后,Pico 将通过其仅出站连接将端点请求路由到已注册的上游服务。这意味着你可以在不打开公共端口的情况下暴露你的服务。
Verilator 是一款开源的 Verilog/SystemVerilog 模拟器和代码检查工具,它速度快,支持多线程输出,被广泛应用于工业界和学术界。Verilator 接受 Verilog 或 SystemVerilog 代码,执行代码质量检查,并将其编译成多线程的 C++ 或 SystemC 代码。Verilator 的性能优于许多商业模拟器,并且是开源的,因此您可以节省许可证费用。
Podman AI Lab 是 Podman Desktop 的开源扩展,用于在本地环境中使用大型语言模型 (LLM)。 它提供了一个包含常见 AI 用例的配方目录、一组精选的开源模型,以及一个用于学习、原型设计和实验的游乐场。 Podman AI Lab 帮助您快速轻松地将 AI 引入您的应用程序,而无需依赖笔记本电脑以外的基础架构,从而确保数据隐私和安全。
DAKSH 工具更换器 V2 是一款完全 3D 打印的机械工具更换器,与 Voron Trident、1.8、2.4 和 RatRig VCore 3 等不同的 CoreXY 平台兼容。 该项目完全开源,可免费用于非商业目的。DAKSH V2 工具更换器具有机械工具更换器,超快工具更换时间低于 4 秒,完全 3D 打印等特点。
本文提供了一份开源视频游戏和商业视频游戏的开源重制版列表,涵盖了动作、冒险、商业、城市建设、第一人称射击、平台跳跃、解谜、竞速、即时战略、Roguelike、角色扮演、沙盒、弹幕射击、体育、第三人称射击、塔防和回合制策略等多种游戏类型,并提供了每个游戏的源代码链接。
gezgin是一款使用C++和raylib编写的简单路径查找可视化应用程序,可以直观地探索伊斯坦布尔的街道。它利用OpenStreetMap数据、Overpass API和Dijkstra算法进行寻路,并以60 FPS的速度渲染超过30万个节点和道路。该项目还涉及地理空间索引、标准化和缩放,并使用邻接表作为数据结构。
Pi-card是一个完全在树莓派上运行的AI语音助手,它能够像标准LLM(如ChatGPT)一样在对话环境中执行任何操作。此外,如果配备了摄像头,您还可以要求Pi-card拍照、描述它看到的内容,然后提出有关该图像的问题。Pi-card完全在您的树莓派上运行,使用whipser.cpp进行音频转录,使用llama.cpp进行视觉语言建模。
pg_lakehouse是一个Postgres扩展,它将Postgres转换为一个分析查询引擎,可以处理S3等对象存储和Delta Lake等表格式。查询被下推到Apache DataFusion,它提供了出色的分析性能。支持以下对象存储、表格式和文件格式的组合。pg_lakehouse支持Postgres 14、15和16。即将支持Postgres 12和13。
Pipecat是一个用于构建语音和多模态对话代理的开源框架,可用于创建个人教练、会议助理、儿童故事讲述玩具、客户支持机器人等。它支持多种AI服务和实时媒体传输,并提供易于使用的API和示例应用程序,方便开发者快速上手。
GxHash是一个非常快速且稳健的非加密哈希算法。它利用SIMD指令、高指令级并行和紧凑的字节码实现了高速性能,并通过多轮硬件加速AES块密码进行高效的比特混合,使其具有低碰撞率、均匀分布和高雪崩特性。GxHash通过了SMHasher测试,并提供了种子随机化以增强抗DoS攻击能力。
Boxwood是一个使用JavaScript编写的服务器端模板引擎,其设计目标包括:将模板拆分为组件、对每个组件的CSS进行哈希处理、自动压缩CSS、内联关键CSS、模板可以导入其他依赖项、内联图像或SVG、支持i18n、对SEO友好、体积小、易于上手、语法熟悉且易于测试。
makext是一组用于Makefiles的实用扩展,旨在简化和增强基于Make的项目的函数。这些扩展提供了额外的功能和便利功能,以改进GNU Make作为任务运行器的整体用法。所有扩展都用GNU Make编写,因此没有使用其他语言,这使得它非常容易嵌入,并且除了GNU Make之外没有其他依赖项。
这是一个C# Windows窗体应用程序,允许用户将YouTube视频下载为MP3文件。用户可以输入YouTube URL,点击下载按钮后,应用程序会使用YoutubeExplode获取并下载视频。进度条实时更新,显示下载进度。下载完成后,应用程序使用MediaToolkit将视频转换为MP3。用户可以通过SaveFileDialog选择MP3文件的保存位置。完成后会弹出完成通知。
Yi-1.5是Yi的升级版本,经过5000亿token的高质量语料库持续预训练,并在300万个不同的微调样本上进行了微调。与Yi相比,Yi-1.5在编码、数学、推理和指令跟随能力方面表现更出色,同时仍然保持了在语言理解、常识推理和阅读理解方面的出色能力。Yi-1.5提供三种模型尺寸:34B、9B和6B。
es6_maps 项目为 Elixir 映射引入了类似 ES6 的简写语法,简化了频繁使用映射字面量的代码模式,例如 `ctx = %{variable: variable, user: user, ...}`。它通过在运行时替换 Elixir 编译器的 elixir_map 模块来实现,将映射键 %{k} 替换为 %{k: k}。该项目不产生运行时开销,并且与 JavaScript 和 Rust 等其他语言的简写语法类似。