当前位置: 首页 > news >正文

【图片识别分类】如何快速识别照片中的水印文字,对图片进行关键字分类,快速整理水印相机拍摄图片,基于WPF和腾讯OCR的技术实现

项目背景

在施工现场,施工人员通常会使用水印相机拍摄照片,这些照片带有时间、地点、施工阶段等水印信息。为了便于管理和归档,需要快速识别照片中的水印文字,并根据关键字对照片进行分类和整理。

界面设计

界面设计简洁直观,方便用户快速上手:

  • 主窗口:包含一个图片选择区域、一个识别结果展示区域、一个关键字分类区域以及几个操作按钮(如“选择图片”、“开始识别”、“导出结果”等)。

  • 图片选择区域:用户可以通过按钮选择需要处理的图片文件,支持批量选择。

  • 识别结果展示区域:显示图片中识别到的文字内容。

  • 关键字分类区域:用户可以输入关键字,系统会根据关键字对图片进行分类。

  • 操作按钮

    • 选择图片:打开文件选择对话框,选择图片。

    • 开始识别:调用腾讯 OCR API 对选中的图片进行文字识别。

    • 导出结果:将识别结果和分类结果导出到表格或文件中。

详细代码步骤

以下是基于 WPF 和腾讯 OCR 的实现代码:

1. 引入必要的命名空间
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Newtonsoft.Json;
using TencentCloud.Common;
using TencentCloud.Common.Profile;
using TencentCloud.Ocr.V20181119;
using TencentCloud.Ocr.V20181119.Models;
2. 主窗口代码

csharp

复制

public partial class MainWindow : Window
{private string secretId = "your_secret_id";private string secretKey = "your_secret_key";private List<string> imagePaths = new List<string>();public MainWindow(){InitializeComponent();}private async void btnSelectImages_Click(object sender, RoutedEventArgs e){Microsoft.Win32.OpenFileDialog openFileDialog = new Microsoft.Win32.OpenFileDialog{Multiselect = true,Filter = "Image files (*.jpg;*.jpeg;*.png)|*.jpg;*.jpeg;*.png"};if (openFileDialog.ShowDialog() == true){imagePaths = openFileDialog.FileNames.ToList();txtResults.Text = "Selected images: " + string.Join(", ", imagePaths);}}private async void btnStartRecognition_Click(object sender, RoutedEventArgs e){if (imagePaths.Count == 0){MessageBox.Show("Please select images first.");return;}List<string> results = new List<string>();foreach (var imagePath in imagePaths){string result = await RecognizeImageText(imagePath, secretId, secretKey);results.Add(result);txtResults.Text += $"\n\nImage: {imagePath}\nResult: {result}";}}private async Task<string> RecognizeImageText(string imagePath, string secretId, string secretKey){try{Credential cred = new Credential(secretId, secretKey);HttpProfile httpProfile = new HttpProfile{Endpoint = "ocr.tencentcloudapi.com"};ClientProfile clientProfile = new ClientProfile{HttpProfile = httpProfile};OcrClient client = new OcrClient(cred, "ap-guangzhou", clientProfile);GeneralBasicOCRRequest req = new GeneralBasicOCRRequest{ImageBase64 = Convert.ToBase64String(File.ReadAllBytes(imagePath))};GeneralBasicOCRResponse resp = await client.GeneralBasicOCR(req);return JsonConvert.SerializeObject(resp, Formatting.Indented);}catch (Exception ex){return $"OCR recognition failed: {ex.Message}";}}private void btnExportResults_Click(object sender, RoutedEventArgs e){SaveFileDialog saveFileDialog = new SaveFileDialog{Filter = "Text files (*.txt)|*.txt"};if (saveFileDialog.ShowDialog() == true){File.WriteAllText(saveFileDialog.FileName, txtResults.Text);MessageBox.Show("Results exported successfully.");}}
}
3. XAML 界面代码
<Window x:Class="WpfApp.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="OCR Image Recognition" Height="450" Width="800"><Grid><Grid.RowDefinitions><RowDefinition Height="Auto"/><RowDefinition Height="*"/><RowDefinition Height="Auto"/></Grid.RowDefinitions><Button x:Name="btnSelectImages" Content="Select Images" Grid.Row="0" Margin="10" Click="btnSelectImages_Click"/><TextBox x:Name="txtResults" Grid.Row="1" Margin="10" VerticalScrollBarVisibility="Auto" TextWrapping="Wrap"/><Button x:Name="btnStartRecognition" Content="Start Recognition" Grid.Row="2" Margin="10" Click="btnStartRecognition_Click"/><Button x:Name="btnExportResults" Content="Export Results" Grid.Row="2" Margin="10" HorizontalAlignment="Right" Click="btnExportResults_Click"/></Grid>
</Window>

总结优化

  1. 性能优化:对于大量图片的处理,可以考虑使用多线程或异步编程来提高识别效率。

  2. 功能扩展:可以增加更多功能,如支持更多图片格式、支持对识别结果的编辑和校正。

  3. 用户体验:进一步优化界面设计,使其更加友好和直观。

  4. 错误处理:增强错误处理机制,确保在识别失败或网络问题时能够给用户清晰的提示。

通过上述实现,可以快速识别施工现场照片中的水印文字,对图片进行关键字分类,并快速整理水印相机拍摄的图片,提高工作效率

相关文章:

【图片识别分类】如何快速识别照片中的水印文字,对图片进行关键字分类,快速整理水印相机拍摄图片,基于WPF和腾讯OCR的技术实现

项目背景 在施工现场&#xff0c;施工人员通常会使用水印相机拍摄照片&#xff0c;这些照片带有时间、地点、施工阶段等水印信息。为了便于管理和归档&#xff0c;需要快速识别照片中的水印文字&#xff0c;并根据关键字对照片进行分类和整理。 界面设计 界面设计简洁直观&…...

第32讲:卫星遥感与深度学习融合 —— 让地球“读懂”算法的语言

目录 🔍 一、讲讲“遥感+深度学习”到底是干啥的? ✅ 能解决什么问题? 🧠 二、基础原理串讲:深度学习如何“看懂”遥感图? 🛰 遥感图像数据类型: 🧠 CNN的基本思路: 🧪 三、实战案例:用CNN对遥感图像做地类分类 📦 所需R包: 🗂️ 步骤一:构建训…...

Java 静态变量、静态方法及工具类介绍

目录 一、静态变量&#xff08;Static Variables&#xff09; 1. 基本概念 2. 核心特性 (1)类级别共享 (2)生命周期 (3)内存分配 3. 使用方法 (1)访问方式 (2)初始化时机 4. 典型应用场景 (1)共享常量 (2)计数器功能 (3)配置信息 二、静态方法&#xff08;Static …...

【win 1】win 右键菜单添加 idea pycharm vscode trae 打开文件夹

编程时经常需要通过 程序 打开文件夹&#xff0c;有时安装时没注意选上添加到右键菜单&#xff0c;又不想重新安装&#xff0c;有什么方法&#xff1f; 之前教程都是改注册表有点繁琐&#xff0c;这里利用开源的 windows 右键管理软件&#xff0c;可以快捷简单的添加。 右键菜…...

XSS跨站脚本攻击漏洞

目录 一、基本概念 二、XSS分类 1、反射型XSS 2、存储型XSS 3、DOM型XSS 三、手工测试 1、反射型XSS漏洞 &#xff08;1&#xff09;安全等级low &#xff08;2&#xff09;DOM的XSS &#xff08;3&#xff09;安全等级medium &#xff08;4&#xff09;安全等级hig…...

TensorFlow 实现 Mixture Density Network (MDN) 的完整说明

本文档详细解释了一段使用 TensorFlow 构建和训练混合密度网络&#xff08;Mixture Density Network, MDN&#xff09;的代码&#xff0c;涵盖数据生成、模型构建、自定义损失函数与预测可视化等各个环节。 1. 导入库与设置超参数 import numpy as np import tensorflow as t…...

servlet-服务器内部转发和客户端重定向

服务器内部转发以及客户端重定向 服务器内部转发以及客户端重定向1&#xff09;服务器内部转发&#xff1a;request.getRequestDispatcher("...").forward(request,response);--- 一次请求响应的过程&#xff0c;对于客户端而言&#xff0c;内部转发多少次&#xff…...

手动实现LinkedList

前言 大家好&#xff0c;我是Maybe。最近在学习数据结构中的链表&#xff0c;自己手动实现了一个LinkedList。我想与大家分享一下。 思维导图 代码部分 package Constant;public class constant {public static final String INDEX_IS_WRONG"输入的下标不合法"; }p…...

实现AWS Step Function安全地请求企业内部API返回数据

需要编写一个Step Function在AWS云上运行&#xff0c;它需要访问企业内部的API获取JSON格式的数据&#xff0c;企业有网关和防火墙&#xff0c;API有公司的okta身份认证&#xff0c;通过公司的域账号来授权访问&#xff0c;现在需要创建一个专用的域账号&#xff0c;让Step Fun…...

掌握 MySQL:从命令行操作到数据类型与字段管理

掌握 MySQL&#xff1a;从命令行操作到数据类型与字段管理 MySQL 作为全球最流行的开源关系型数据库管理系统&#xff0c;广泛应用于 Web 开发、数据分析和企业级应用中。无论是初学者还是资深开发者&#xff0c;掌握 MySQL 的基本命令行操作、了解其数据库类型、数据类型、字…...

基于大语言模型的自动化单元测试生成系统及测试套件评估方法

A System for Automated Unit Test Generation Using Large Language Models and Assessment of Generated Test Suites 翻译于上述论文 基于大语言模型的自动化单元测试生成系统及测试套件评估方法 摘要 单元测试是软件测试生命周期中最基础的测试层级&#xff0c;对确保软…...

使用vue2技术写了一个纯前端的静态网站商城-鲜花销售商城

先给大家看一下网站的整体效果截图&#xff1a; 这个前端静态网站项目主要实现了以下功能&#xff1a; 商城首页、商品分类页、登录注册页、个人中心页、我的收藏页、我的订单页、商品详情页等功能。 最近不是在学习前端开发嘛&#xff0c;肯定要做一些项目来练习以下自己学…...

PyTorch深度学习框架60天进阶学习计划 - 第46天:自动化模型设计(一)

PyTorch深度学习框架60天进阶学习计划 - 第46天&#xff1a;自动化模型设计&#xff08;一&#xff09; 第一部分&#xff1a;使用ENAS算法生成图像分类网络 大家好&#xff01;欢迎来到我们PyTorch深度学习框架60天进阶学习计划的第46天。今天我们要深入探讨一个话题——使用…...

【上海大学计算机系统结构实验报告】多机环境下MPI并行编程

实验目的 学习编制多进程并行程序实现如下功能&#xff1a; 创建多进程&#xff0c;输出进程号和进程数。运行多进程并行例子程序。编程实现大规模矩阵的并行计算。 实验过程及结果分析 实验环境 操作系统&#xff1a;Ubuntu 20.04开发工具&#xff1a;GCC 9.3.0、OpenMPI…...

实用电脑工具,轻松实现定时操作

软件介绍 如果你的电脑有时候需要像个听话的小助手一样&#xff0c;按照你的指令在特定时间做些事情&#xff0c;比如到了点就关机、开机&#xff0c;或者自动打开某个软件&#xff0c;那你可得了解下这个小帮手啦&#xff01; 小巧功能却不少 程序定时器是一款超实用的电脑…...

jQuery — 动画和事件

介绍 jQuery动画与事件是提升网页交互的核心工具。动画方面&#xff0c;jQuery通过简洁API实现平滑过渡效果&#xff0c;提供预设方法如slideUp()&#xff0c;支持.animate()自定义CSS属性动画&#xff0c;并内置队列系统实现动画链式执行。开发者可精准控制动画速度、回调时机…...

Kubernetes相关的名词解释kube-proxy插件(3)

什么是kube-proxy&#xff1f; kube-proxy 是一个网络代理组件&#xff0c;运行在每个节点&#xff08;Node&#xff09;上&#xff0c;是 Kubernetes 服务&#xff08;Service&#xff09;功能的核心实现之一。它的主要职责是通过维护网络规则&#xff0c;实现集群内服务&…...

第3章 垃圾收集器与内存分配策略《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》

第3章 垃圾收集器与内存分配策略 3.2 对象已死 Java世界中的所有对象实例&#xff0c;垃圾收集器进行回收前就是确定对象哪些是活着的&#xff0c;哪些已经死去。 3.2.1 引用计数算法 常见的回答是&#xff1a;给对象中添加一个引用计数器&#xff0c;有地方引用&#xff0…...

MCP是什么?为什么突然那么火?

什么是MCP? MCP全称为Model Context Protocol&#xff08;模型上下文协议&#xff09;&#xff0c;是由Anthropic公司在2024年11月推出的一个开源协议。Anthropic是一家以其开发的Claude大语言模型而闻名的公司。MCP旨在提供一个通用的开放标准&#xff0c;以简化大型语言模型…...

与终端同居日记:Linux指令の进阶撩拨手册

前情提要&#xff1a; 当你和终端的关系从「早安打卡」进阶到「深夜代码同居」&#xff0c;那些曾经高冷的指令开始展露致命の反差萌—— man 是那个永远在线的钢铁直男说明书&#xff0c;只会说&#xff1a;"想懂我&#xff1f;自己看文档&#xff01;"&#xff08…...

STM32单片机入门学习——第42节: [12-2] BKP备份寄存器RTC实时时钟

写这个文章是用来学习的,记录一下我的学习过程。希望我能一直坚持下去,我只是一个小白,只是想好好学习,我知道这会很难&#xff0c;但我还是想去做&#xff01; 本文写于&#xff1a;2025.04.19 STM32开发板学习——第42节: [12-2] BKP备份寄存器&RTC实时时钟 前言开发板说…...

AI 驱动抗生素发现:从靶点到化合物测试

AI 驱动抗生素发现:从靶点到化合物测试 目录 基于 AI 驱动的研发流程发现抗生素,整合靶点选择和深度学习分子生成,显著提升了候选药物发现效率。结合数据平衡技术,机器学习和 AutoML 能有效提升不平衡数据集分类性能。RibbonFold 是一种新的 AI 模型,可以准确预测淀粉样蛋…...

群晖威联通飞牛等nas如何把宿主机硬盘挂接到可道云docker容器中

可道云系统是用户常用的一款面向个人用户的轻量级私有云存储工具&#xff0c;以高效管理和安全存储为核心&#xff0c;打造便捷的数字化办公体验。但是用户希望把原有其他磁盘中文件挂接到这个新系统中有很大的难度,主要是对linux文件系统理解有很大的误区,认为目录结构是固定的…...

用 R 语言打造交互式叙事地图:讲述黄河源区生态变化的故事

目录 🌟 项目背景:黄河源头的生态变迁 🧰 技术栈介绍 🗺️ 最终效果预览 💻 项目构建步骤 1️⃣ 数据准备 2️⃣ 构建 Leaflet 地图 3️⃣ 使用 scrollama 实现滚动触发事件 4️⃣ 使用 R Markdown / Quarto 打包发布 🎬 效果展示截图 📦 完整代码仓库 …...

opencv(双线性插值原理)

双线性插值是一种图像缩放、旋转或平移时进行像素值估计的插值方法。当需要对图像进行变换时&#xff0c;特别是尺寸变化时&#xff0c;原始图像的某些像素坐标可能不再是新图像中的整数位置&#xff0c;这时就需要使用插值算法来确定这些非整数坐标的像素值。 双线性插值的工…...

Flutter 弹窗队列管理:实现一个线程安全的通用弹窗队列系统

在开发复杂的 Flutter 应用时&#xff0c;弹窗的管理往往是一个令人头疼的问题。尤其是在多个弹窗需要按顺序显示&#xff0c;或者弹窗的显示需要满足特定条件时&#xff0c;手动管理弹窗的显示和隐藏不仅繁琐&#xff0c;还容易出错。为了解决这个问题&#xff0c;我们可以实现…...

Linux压缩与解压命令完全指南:tar.gz、zip等格式详解

Linux压缩与解压命令完全指南&#xff1a;tar.gz、zip等格式详解 在Linux系统中&#xff0c;文件压缩和解压是日常操作中不可或缺的一部分。本文将全面介绍Linux下常用的压缩和解压命令&#xff0c;包括tar.gz、tar、zip等格式的区别和使用方法&#xff0c;帮助你高效管理文件…...

doris/clickhouse常用sql

一、doris常用SQL 1、doris统计数据库的总大小&#xff08;单位&#xff1a;MB&#xff09; SELECT table_schema AS database_name,ROUND(SUM(data_length) / 1024 / 1024, 2) AS database_size_MB FROM information_schema.tables WHERE table_schema NOT IN (information…...

实现AWS Lambda函数安全地请求企业内部API返回数据

需要编写一个Lambda函数在AWS云上运行&#xff0c;它需要访问企业内部的API获取JSON格式的数据&#xff0c;企业有网关和防火墙&#xff0c;API有公司的okta身份认证&#xff0c;通过公司的域账号来授权访问&#xff0c;现在需要创建一个专用的域账号&#xff0c;让Lambda函数访…...

【Easylive】Interact与Web服务调用实例及网关安全拦截机制解析

【Easylive】项目常见问题解答&#xff08;自用&持续更新中…&#xff09; 汇总版 easylive-cloud-interacteasylive-cloud-web 1. 不同服务&#xff08;web和interact&#xff09;之间的调用方式 调用流程 • 角色分工&#xff1a; • easylive-cloud-web&#xff1a;作…...

【HDFS】EC重构过程中的校验功能:DecodingValidator

一、动机 DecodingValidator是在HDFS-15759中引入的一个用于校验EC数据重构正确性的组件。 先说下引入DecodingValidator的动机,据很多已知的ISSUE(如HDFS-14768, HDFS-15186, HDFS-15240,这些目前都已经fix了)反馈, EC在重构的时候可能会有各种各样的问题,导致数据错误…...

Chromium 134 编译指南 macOS篇:编译优化技巧(六)

1. 引言 在Chromium 134的开发过程中&#xff0c;优化编译速度是提升开发效率的关键因素。本文将重点介绍如何使用ccache工具来加速C/C代码的编译过程&#xff0c;特别是在频繁切换分支和修改代码时。通过合理配置和使用这些工具&#xff0c;您将能够显著减少编译时间&#xf…...

FPGA——基于DE2_115实现DDS信号发生器

FPGA——基于DE2_115实现DDS信号发生器 文章目录 FPGA——基于DE2_115实现DDS信号发生器一、实验要求二、实现过程&#xff08;1&#xff09;新建工程 二、波形存储器ROM&#xff08;1&#xff09;方波模块&#xff08;2&#xff09;正弦波形存储器&#xff08;3&#xff09;锁…...

PHP中的ReflectionClass讲解【详细版】

快餐&#xff1a; ReflectionClass精简版 在PHP中&#xff0c;ReflectionClass是一个功能强大的反射类&#xff0c;它就像是一个类的“X光透视镜”&#xff0c;能让我们在程序运行时深入了解类的内部结构和各种细节。 一、反射类的基本概念和重要性 反射是指在程序运行期间获…...

嵌入式面试题解析:常见基础知识点详解

在嵌入式领域的面试中&#xff0c;基础知识点的考察尤为重要。下面对一些常见面试题进行详细解析&#xff0c;帮助新手一步步理解。 一、原码、反码、补码及补码的好处 题目 什么叫原码、反码、补码&#xff1f;计算机学科引入补码有什么好处&#xff1f; 在计算机科学中&a…...

GPU渲染阶段介绍+Shader基础结构实现

GPU是什么 &#xff08;CPU&#xff09;Center Processing Unit:逻辑编程 &#xff08;GPU&#xff09;Graphics Processing Unit&#xff1a;图形处理&#xff08;矩阵运算&#xff0c;数据公式运算&#xff0c;光栅化&#xff09; 渲染管线 渲染管线也称为渲染流水线&#x…...

08-DevOps-向Harbor上传自定义镜像

harbor创建完成&#xff0c;往harbor镜像仓库中上传自定义的镜像&#xff0c;包括新建项目、docker配置镜像地址、镜像重命名、登录harbor、推送镜像这几个步骤&#xff0c;具体操作如下&#xff1a; harbor中新建项目 访问级别公开&#xff0c;代表任何人都可以拉取仓库中的镜…...

C++学习之路,从0到精通的征途:vector类的模拟实现

目录 一.vector的介绍 二.vector的接口实现 1.成员变量 2.迭代器 &#xff08;1&#xff09;begin &#xff08;2&#xff09;end 3.容量操作 &#xff08;1&#xff09;size&#xff0c;capacity &#xff08;2&#xff09;reserve &#xff08;3&#xff09;resize…...

嵌入式软件--stm32 DAY 2

大家学习嵌入式的时候&#xff0c;多多学习用KEIL写代码&#xff0c;虽然作为编译器&#xff0c;大家常用vscode等常用工具关联编码&#xff0c;但目前keil仍然是主流工具之一&#xff0c;学习掌握十分必要。 1.再次创建项目 1.1编译器自动生成文件 1.2初始文件 这样下次创建新…...

多模态大语言模型arxiv论文略读(二十九)

Temporal Insight Enhancement: Mitigating Temporal Hallucination in Multimodal Large Language Models ➡️ 论文标题&#xff1a;Temporal Insight Enhancement: Mitigating Temporal Hallucination in Multimodal Large Language Models ➡️ 论文作者&#xff1a;Li Su…...

【人工智能学习-01-01】20250419《数字图像处理》复习材料的word合并PDF,添加页码

前情提要 20250419今天是上师大继续教育人工智能专升本第一学期的第一次线下课。 三位老师把视频课的内容提炼重点再面授。&#xff08;我先看了一遍视频&#xff0c;但是算法和图像都看不懂&#xff0c;后来就直接挂分刷满时间&#xff0c;不看了&#xff09; 今天是面对面授…...

B端APP设计:打破传统限制,为企业开启便捷新通道

B端APP设计&#xff1a;打破传统限制&#xff0c;为企业开启便捷新通道 在数字化转型浪潮中&#xff0c;企业级移动应用正突破传统管理系统的功能边界&#xff0c;演变为连接产业链各环节的核心枢纽。本文从技术架构革新、交互模式进化、安全防护升级三个维度&#xff0c;系统…...

【多线程5】面试常考锁知识点

文章目录 悲观/乐观锁挂起等待锁/自旋锁偏向锁轻量级/重量级锁锁升级CASCAS引发的ABA问题解决方案 原子类 公平/不公平锁可重入锁ReentrantLock读写锁 Callable接口 这里的“悲观”“乐观”“挂起等待”“自旋”“轻量级”“重量级”“公平”“非公平”“可重入”仅代表某个锁的…...

Linux第一个系统程序——进度条

1.回车与换行 回车&#xff08;CR, \r&#xff09;&#xff1a; 作用&#xff1a;将光标移动到当前行的行首&#xff08;最左侧&#xff09;&#xff0c;但不换到下一行。 历史来源&#xff1a;源自打字机的“回车”操作——打字机的滑架&#xff08;Carriage&#xff09;需…...

C 语 言 --- 指 针 3

C 语 言 --- 指 针 3 函 数 指 针函 数 指 针 数 组代 码 解 释回 调 函 数 - - - qsort模 拟 实 现 qsort 函 数 总结 &#x1f4bb;作 者 简 介&#xff1a;曾 与 你 一 样 迷 茫&#xff0c;现 以 经 验 助 你 入 门 C 语 言 &#x1f4a1;个 人 主 页&#xff1a;笑口常开x…...

蓝桥杯之递归

1.数字三角形 题目描述 上图给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径&#xff0c;把路径上面的数加起来可以得到一个和&#xff0c;你的任务就是找到最大的和&#xff08;路径上的每一步只可沿左斜线向下或右斜线向下走&#xff09;。 输…...

学习笔记十八——Rust 封装

&#x1f9f1; Rust 封装终极指南&#xff1a;结构体、模块、Trait、目录结构与模块引用 &#x1f9ed; 目录导航 什么是封装&#xff1f;Rust 的封装理念Rust 的封装工具总览模块&#xff08;mod&#xff09;和访问控制&#xff08;pub&#xff09;详解结构体和枚举&#xff…...

【面试向】点积与注意力机制,逐步编码理解自注意力机制

点积&#xff08;dot product&#xff09;两个向量点积的数学公式点积&#xff08;dot product&#xff09;与 Attention 注意力机制&#xff08;Attention&#xff09;注意力机制的核心思想注意力机制中的缩放点积自注意力机制中&#xff0c;谁注意谁&#xff1f; 逐步编码理解…...

基础数学知识-线性代数

1. 矩阵相乘 c i j = a i k ∗ b k j c_{ij} = a_{ik} * b_{kj} cij​=aik​∗bkj​ 1. 范数 1. 向量的范数 任意一组向量设为 x ⃗ = ( x 1 , x 2 , . . . , x N ) \vec{x}=(x_1,x_2,...,x_N) x =(x1​,x2​,...,xN​) 如下: 向量的1范数: 向量的各个元素的绝对值之和∥ …...

【KWDB 创作者计划】_上位机知识篇---Docker容器

文章目录 前言1. Docker 容器是什么&#xff1f;隔离性轻量级可移植性可复用性 2. Docker 核心概念镜像容器仓库Dockerfile 3. Docker 基本使用(1) 安装 Docker(2) 容器生命周期管理(3) 镜像管理(4) 进入容器内部(5) 数据持久化&#xff08;挂载卷&#xff09;(6) 网络管理 4. …...