首页 游戏 软件 资讯 排行榜 专题
首页
AI
2024年最新版PaddleOCR新手指导(训练自己的数据集与知识蒸馏)

2024年最新版PaddleOCR新手指导(训练自己的数据集与知识蒸馏)

热心网友
22
转载
2025-07-22
本文介绍2024年新手掌握PaddleOCR的使用,包括其超轻量等特性。涵盖快速使用步骤,如解压数据集、安装环境、准备模型和测试图像,及单张和多张图像测试。还讲解训练数据集、文字检测与识别的训练和测试,模型转换,以及知识蒸馏的配置、训练等内容,最后提及多种部署选项。

2024年最新版paddleocr新手指导(训练自己的数据集与知识蒸馏) - 游乐网

2024年最新新手掌握PaddleOCR使用(训练自己数据集与知识蒸馏)

Paddle OCR特性:

超轻量级中文OCR,总模型仅8.6M单模型支持中英文数字组合识别、竖排文本识别、长文本识别检测模型DB(4.1M)+识别模型CRNN(4.5M)多种文本检测训练算法,EAST、DB多种文本识别训练算法,Rosetta、CRNN、STAR-Net、RARE

本教程旨在帮助使用者快速了解PaddleOCR,并掌握PaddleOCR的使用方式,包括:

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

PaddleOCR快速使用文本检测模型的训练方式文件识别模型的训练方式

PaddleOCR快速使用

本节介绍如何使用PaddleOCR的轻量级模型完成文本检测、识别的任务。

轻量级OCR模型效果:

2024年最新版PaddleOCR新手指导(训练自己的数据集与知识蒸馏) - 游乐网        

1.解压数据集

In [3]
!ls /home/aistudio/data
登录后复制        
data294006
登录后复制        In [ ]
!mkdir /home/aistudio/external-libraries!pip install beautifulsoup4 -t /home/aistudio/external-libraries
登录后复制    In [5]
%cd ~
登录后复制        
/home/aistudio
登录后复制        In [6]
!git clone https://github.com/PaddlePaddle/PaddleOCR.git
登录后复制        
Cloning into 'PaddleOCR'...remote: Enumerating objects: 51224, done.remote: Counting objects: 100% (1542/1542), done.remote: Compressing objects: 100% (848/848), done.remote: Total 51224 (delta 808), reused 1315 (delta 680), pack-reused 49682 (from 1)Receiving objects: 100% (51224/51224), 385.22 MiB | 7.47 MiB/s, done.Resolving deltas: 100% (35953/35953), done.Updating files: 100% (2390/2390), done.
登录后复制        In [4]
%cd ~/PaddleOCR
登录后复制        
/home/aistudio/PaddleOCR
登录后复制        

2.安装环境

In [ ]
# 安装依赖库!pip install -r requirements.txt -i https://mirror.baidu.com/pypi/simple
登录后复制    

3.准备inference model和测试图像

In [ ]
!mkdir inference && cd inference# 下载8.6M中文模型的检测模型并解压# ! cd inference && wget https://paddleocr.bj.bcebos.com/ch_models/ch_det_mv3_db_infer.tar && tar xf ch_det_mv3_db_infer.tar# # 下载8.6M中文模型的识别模型并解压# ! cd inference && wget https://paddleocr.bj.bcebos.com/ch_models/ch_rec_mv3_crnn_infer.tar && tar xf ch_rec_mv3_crnn_infer.tar!cd inference && wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar && tar xf ch_PP-OCRv3_det_infer.tar!cd inference && wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar && tar xf ch_PP-OCRv3_rec_infer.tar
登录后复制    

4.测试图像

准备了一些测试图像,上传图像测试我们的OCR模型。使用代码可视化测试图像

In [7]
import matplotlib.pyplot as pltfrom PIL import Image# 图像文件绝对路径img_path = "/home/aistudio/data/data294006/ppocr_img/imgs/11.webp"# 打开图像文件img = Image.open(img_path)# 显示图像plt.figure("test_img", figsize=(10,10))plt.imshow(img)plt.show()
登录后复制        
登录后复制                

4.1测试单张图像

下面开始调用tools/infer/predict_system.py 完成图像文本识别,共需要传入三个参数:

image_dir: 指定要测试的图像

det_model_dir: 指定轻量检测模型的inference model

rec_model_dir: 指定轻量识别模型的inference model

In [8]
!pwd!ls
登录后复制        
/home/aistudio/PaddleOCRLICENSE       applications  docs       paddleocr.py setup.pyMANIFEST.in   benchmark     inference       ppocr test_tipcREADME.md     configs    inference_results  ppstructure testsREADME_en.md  deploy    mkdocs.yml       pyproject.toml tools__init__.py   doc    overrides       requirements.txt  train.sh
登录后复制        In [9]
# 快速运行!python3 tools/infer/predict_system.py --image_dir="/home/aistudio/data/data294006/ppocr_img/imgs/11.webp" --det_model_dir="./inference/ch_PP-OCRv3_det_infer/"  --rec_model_dir="./inference/ch_PP-OCRv3_rec_infer/"
登录后复制        
[2024/09/11 22:51:22] ppocr WARNING: The first GPU is used for inference by default, GPU ID: 0E0911 22:51:22.421043 11060 analysis_config.cc:126] Please use PaddlePaddle with GPU version.[2024/09/11 22:51:22] ppocr WARNING: The first GPU is used for inference by default, GPU ID: 0E0911 22:51:22.950991 11060 analysis_config.cc:126] Please use PaddlePaddle with GPU version.[2024/09/11 22:51:23] ppocr INFO: In PP-OCRv3, rec_image_shape parameter defaults to '3, 48, 320', if you are using recognition model with PP-OCRv2 or an older version, please set --rec_image_shape='3,32,320[2024/09/11 22:51:23] ppocr DEBUG: dt_boxes num : 16, elapsed : 0.3190124034881592[2024/09/11 22:51:24] ppocr DEBUG: rec_res num  : 16, elapsed : 1.1868066787719727[2024/09/11 22:51:24] ppocr DEBUG: 0  Predict time of /home/aistudio/data/data294006/ppocr_img/imgs/11.webp: 1.511s[2024/09/11 22:51:24] ppocr DEBUG: 纯臻营养护发素, 0.966[2024/09/11 22:51:24] ppocr DEBUG: 产品信息/参数, 0.911[2024/09/11 22:51:24] ppocr DEBUG: (45元/每公斤,100公斤起订), 0.884[2024/09/11 22:51:24] ppocr DEBUG: 每瓶22元,1000瓶起订), 0.921[2024/09/11 22:51:24] ppocr DEBUG: 【品牌】:代加工方式/OEMODM, 0.966[2024/09/11 22:51:24] ppocr DEBUG: 【品名】:纯臻营养护发素, 0.883[2024/09/11 22:51:24] ppocr DEBUG: 【产品编号】:YM-X-3011, 0.872[2024/09/11 22:51:24] ppocr DEBUG: ODMOEM, 0.954[2024/09/11 22:51:24] ppocr DEBUG: 【净含量】:220ml, 0.935[2024/09/11 22:51:24] ppocr DEBUG: 适用人群):适合所有肤质, 0.887[2024/09/11 22:51:24] ppocr DEBUG: 【主要成分】:鲸蜡硬脂醇、燕麦β-葡聚, 0.925[2024/09/11 22:51:24] ppocr DEBUG: 糖、椰油xian胺bing基甜菜碱、泛醒, 0.937[2024/09/11 22:51:24] ppocr DEBUG: (成品包材), 0.893[2024/09/11 22:51:24] ppocr DEBUG: 【主要功能】:可紧致头发磷层,从而达到, 0.868[2024/09/11 22:51:24] ppocr DEBUG: 即时持久改善头发光泽的效果,给于燥的头, 0.880[2024/09/11 22:51:24] ppocr DEBUG: 发足够的滋养, 0.909[2024/09/11 22:51:25] ppocr DEBUG: The visualized image saved in ./inference_results/11.webp[2024/09/11 22:51:25] ppocr INFO: The predict total time is 1.6732959747314453
登录后复制        

输出结果中有两列数据,第一列表示PaddleOCR识别出的文字,第二列表示识别出当前文字的置信度。置信度的数据范围是[0-1],置信度越接近1表示文本识别对的“信心”越大。

如下输出结果中:

[2024/09/11 22:51:24] ppocr DEBUG: 【主要成分】:鲸蜡硬脂醇、燕麦β-葡聚, 0.925

[2024/09/11 22:51:24] ppocr DEBUG: 糖、椰油xian胺bing基甜菜碱、泛醒, 0.937

[2024/09/11 22:51:24] ppocr DEBUG: (成品包材), 0.893

[2024/09/11 22:51:24] ppocr DEBUG: 【主要功能】:可紧致头发磷层,从而达到, 0.868

[2024/09/11 22:51:24] ppocr DEBUG: 即时持久改善头发光泽的效果,给于燥的头, 0.880

同时,识别结果会可视化在图像中并保存在./inference_results文件夹下,可以通过左边的目录结构选择要打开的文件, 也可以通过如下代码将可视化后的图像显示出来,观察OCR文本识别的效果。

4.2测试多张图像

image_dir支持传入单张图像和图像所在的文件目录,当image_dir指定的是图像目录时,运行上述指令会预测当前文件夹下的所有图像中的文字,并将预测的可视化结果保存在inference_results文件夹下。

In [ ]
# 快速运行!python3 tools/infer/predict_system.py --image_dir="/home/aistudio/data/data294006/ppocr_img/imgs/" --det_model_dir="./inference/ch_PP-OCRv3_det_infer/"  --rec_model_dir="./inference/ch_PP-OCRv3_rec_infer/"
登录后复制    

4.3图像文本识别可视化

In [16]
## 显示轻量级模型识别结果## 可视化的文本识别效果img_path= "/home/aistudio/data/data294006/ppocr_img/imgs/11.webp"img = Image.open(img_path)plt.figure("results_img", figsize=(5,5))plt.imshow(img)plt.show()
登录后复制        
登录后复制                In [12]
## 显示轻量级模型识别结果img_path= "./inference_results/11.webp"img = Image.open(img_path)plt.figure("results_img", figsize=(10,30))plt.imshow(img)plt.show()
登录后复制        
登录后复制                

5.训练数据集

5.1模型准备

In [ ]
%cd ~/PaddleOCR/# 根据backbone的不同选择下载对应的预训练模型# 下载MobileNetV3的预训练模型!wget -P ./pretrain_models/ https://paddleocr.bj.bcebos.com/pretrained/MobileNetV3_large_x0_5_pretrained.pdparams# 或,下载ResNet18_vd的预训练模型!wget -P ./pretrain_models/ https://paddleocr.bj.bcebos.com/pretrained/ResNet18_vd_pretrained.pdparams# 或,下载ResNet50_vd的预训练模型!wget -P ./pretrain_models/ https://paddleocr.bj.bcebos.com/pretrained/ResNet50_vd_ssld_pretrained.pdparams
登录后复制    

5.2划分数据集

全部打标完成之后,点击文件选择导出标记结果,再点击文件选择导出识别结果,完成后再文件夹多出四个文件fileState,Label,rec_gt, crop_img。其中crop_img中的图片用来训练文字识别模型,

fileState记录图片的打标完成与否,Label为训练文字检测模型的标签,rec_gt为训练文字识别模型的标签。

6:2:2表示将数据集按照 6:2:2 的比例分割训练集、验证集和测试集,即训练集占总数据集的60%,验证集占20%,测试集占20%。

In [ ]
!rm -rf /home/aistudio/PaddleOCR/train_data!ln -s /home/aistudio/data/data264561/train_data /home/aistudio/PaddleOCR/%cd /home/aistudio/PaddleOCR/PPOCRLabel!python3 gen_ocr_train_val_test.py --trainValTestRatio 6:2:2 --datasetRootPath ../train_data/drivingData/corrected_images
登录后复制    In [ ]
%cd /home/aistudio/PaddleOCR
登录后复制    

训练可视化

In [ ]
!pip install visualdl
登录后复制    

6.文字检测

6.1训练文字检测模型

In [ ]
!python3 tools/train.py -c configs/det/ch_ppocr_v2.0/ch_det_res18_db_v2.0.yml
登录后复制    In [ ]
!visualdl --logdir "output/ch_db_res18/vdl"
登录后复制    

6.2文字检测训练模型预测

模型训练完之后会在文件夹下保存训练好的模型,具体保存的文件夹看配置文件,这就是模型保存的路径:save_model_dir: ./output/ch_db_res18/

使用best_accuracy.pdparams进行模型测试。

在终端中输入以下指令进行测试。其中Global.pretrained_model是我们训练好并且需要测试的模型,Global.infer_img为所要检测的图片路径

In [ ]
!python tools/infer_det.py \    -c configs/det/ch_ppocr_v2.0/ch_det_res18_db_v2.0.yml \    -o Global.pretrained_model=/home/aistudio/PaddleOCR/output/ch_db_res18/latest.pdparams \    Global.infer_img=/home/aistudio/data/data264561/train_data/det/test/5320_corrected.webp
登录后复制    

7.文字识别

7.1训练文字识别模型

In [ ]
!python tools/train.py -c configs/rec/PP-OCRv3/ch_PP-OCRv3_rec.yml
登录后复制    

7.2 文字识别模型测试

In [ ]
!python tools/infer_rec.py \    -c configs/rec/PP-OCRv3/ch_PP-OCRv3_rec.yml \    -o Global.pretrained_model=/home/aistudio/PaddleOCR/output/rec_ppocr_v3/latest.pdparams \    Global.infer_img=/home/aistudio/data/data264561/train_data/det/test/5325_corrected.webp
登录后复制    

8.转换成推理模型

其中Global.pretrained_model是我们训练好并且需要推理的模型,Global.save_inference_dir为所要保存推理模型的位置。推理模型是可以直接被调用进行识别和检测。分别把训练好的文字检测模型和文字识别模型推理。

In [ ]
!python tools/export_model.py \    -c "./configs/rec/PP-OCRv3/ch_PP-OCRv3_rec.yml" \    -o Global.pretrained_model=/home/aistudio/PaddleOCR/output/rec_ppocr_v3/latest.pdparams \    Global.save_inference_dir="./inference_model/rec/"
登录后复制    In [ ]
!python tools/export_model.py \    -c "./configs/det/ch_ppocr_v2.0/ch_det_res18_db_v2.0.yml" \    -o Global.pretrained_model=/home/aistudio/PaddleOCR/output/ch_db_res18/latest.pdparams \    Global.save_inference_dir="./inference_model/det/"
登录后复制    

其中det和rec是推理模型,可以用predict_system.py进行验证

In [ ]
!python tools/infer/predict_system.py \    --image_dir=/home/aistudio/data/data264561/train_data/det/test/5320_corrected.webp \    --det_model_dir="./inference_model/det/" \    --rec_model_dir="./inference_model/rec"
登录后复制    

识别结果会可视化在图像中并保存在./inference_results文件夹下,可以通过左边的目录结构选择要打开的文件, 也可以通过如下代码将可视化后的图像显示出来,观察OCR文本识别的效果。

9.知识蒸馏

在数据量足够大的情况下,通过合理构建网络模型的方式增加其参数量,可以显着改善模型性能,但这又带来了模型复杂度请求提升的问题。大模型在实际场景中使用的成本首先。

深度神经网络一般有局部的参数再现,目前有几种主要的方法对模型进行压缩,减小其参数量。如教师量化、知识调整等,其中知识调整是指使用模型(教师模型) )去指导学生模型(student model)学习特定任务,保证小模型在参数量不变的情况下,得到比较大的性能提升。

另外,在知识补充任务中,也衍生出了互训学习的模型训练方法,论文深度互助中指出,使用两个模型在训练的过程中互相监督,可以达到比单个模型更好的效果。

9.1配置文件解析

在知识增量训练的过程中,数据结构、优化器、学习率、全局的一些属性没有任何变化。模型结构、损失函数、后期处理、指标计算等模块的配置文件需要进行调整。

下面以识别与检测的知识配置配置文件为例,对知识配置的训练与配置进行解析。

9.1.1 识别配置文件解析

配置文件在ch_PP-OCRv3_rec_distillation.yml。

9.1.2 模型结构

知识补充任务中,模型结构配置如下所示

Architecture:  model_type: &model_type "rec"    # 模型类别,rec、det等,每个子网络的模型类别  name: DistillationModel          # 结构名称,蒸馏任务中,为DistillationModel,用于构建对应的结构  algorithm: Distillation          # 算法名称  Models:                          # 模型,包含子网络的配置信息    Teacher:                       # 子网络名称,至少需要包含`pretrained`与`freeze_params`信息,其他的参数为子网络的构造参数      pretrained:                  # 该子网络是否需要加载预训练模型      freeze_params: false         # 是否需要固定参数      return_all_feats: true       # 子网络的参数,表示是否需要返回所有的features,如果为False,则只返回最后的输出      model_type: *model_type      # 模型类别      algorithm: SVTR              # 子网络的算法名称,该子网络其余参数均为构造参数,与普通的模型训练配置一致      Transform:      Backbone:        name: MobileNetV1Enhance        scale: 0.5        last_conv_stride: [1, 2]        last_pool_type: avg      Head:        name: MultiHead        head_list:          - CTCHead:              Neck:                name: svtr                dims: 64                depth: 2                hidden_dims: 120                use_guide: True              Head:                fc_decay: 0.00001          - SARHead:              enc_dim: 512              max_text_length: *max_text_length    Student:      pretrained:      freeze_params: false      return_all_feats: true      model_type: *model_type      algorithm: SVTR      Transform:      Backbone:        name: MobileNetV1Enhance        scale: 0.5        last_conv_stride: [1, 2]        last_pool_type: avg      Head:        name: MultiHead        head_list:          - CTCHead:              Neck:                name: svtr                dims: 64                depth: 2                hidden_dims: 120                use_guide: True              Head:                fc_decay: 0.00001          - SARHead:              enc_dim: 512              max_text_length: *max_text_length
登录后复制        

当然,这里如果希望添加更多的子网络进行训练,也可以按照Student与Teacher的添加方式,在配置文件中添加相应的字段。比如如果希望有3个模型互相监督,共同训练可以,那么Architecture写为如上格式。

最终该模型训练时,包含3个子网络:Teacher, Student, Student2。

补充模型DistillationModel类的具体实现代码可以参考distillation_model.py。

最终模型forward输出为一个字典,key为所有的子网络名称,例如这里为Student与Teacher,value为对应子网络的输出,可以为Tensor(只返回该网络的最后一层)和dict(也返回了中间的特征信息) 。

在每个识别任务中,为了添加更多的损失函数,保证后续方法的可扩展性,将子网络的输出保存为dict,其中包含子模块输出。以该识别模型为例,每个子网络的输出结果结果dict,key包含backbone_out, neck_out, head_out,value为模块配置的张量,最终对于上述对应文件,DistillationModel的输出格式如下。

{  "Teacher": {    "backbone_out": tensor,    "neck_out": tensor,    "head_out": tensor,  },  "Student": {    "backbone_out": tensor,    "neck_out": tensor,    "head_out": tensor,  }}
登录后复制登录后复制    

9.1.3 损失函数

知识补充任务中,损失函数配置如下所示。

Loss:  name: CombinedLoss  loss_config_list:  - DistillationDMLLoss:                       # 蒸馏的DML损失函数,继承自标准的DMLLoss      weight: 1.0                              # 权重      act: "softmax"                           # 激活函数,对输入使用激活函数处理,可以为softmax, sigmoid或者为None,默认为None      use_log: true                            # 对输入计算log,如果函数已经      model_name_pairs:                        # 用于计算DML loss的子网络名称对,如果希望计算其他子网络的DML loss,可以在列表下面继续填充      - ["Student", "Teacher"]      key: head_out                            # 取子网络输出dict中,该key对应的tensor      multi_head: True                         # 是否为多头结构      dis_head: ctc                            # 指定用于计算损失函数的head      name: dml_ctc                            # 蒸馏loss的前缀名称,避免不同loss之间的命名冲突  - DistillationDMLLoss:                       # 蒸馏的DML损失函数,继承自标准的DMLLoss      weight: 0.5                              # 权重      act: "softmax"                           # 激活函数,对输入使用激活函数处理,可以为softmax, sigmoid或者为None,默认为None      use_log: true                            # 对输入计算log,如果函数已经      model_name_pairs:                        # 用于计算DML loss的子网络名称对,如果希望计算其他子网络的DML loss,可以在列表下面继续填充      - ["Student", "Teacher"]      key: head_out                            # 取子网络输出dict中,该key对应的tensor      multi_head: True                         # 是否为多头结构      dis_head: sar                            # 指定用于计算损失函数的head      name: dml_sar                            # 蒸馏loss的前缀名称,避免不同loss之间的命名冲突  - DistillationDistanceLoss:                  # 蒸馏的距离损失函数      weight: 1.0                              # 权重      mode: "l2"                               # 距离计算方法,目前支持l1, l2, smooth_l1      model_name_pairs:                        # 用于计算distance loss的子网络名称对      - ["Student", "Teacher"]      key: backbone_out                        # 取子网络输出dict中,该key对应的tensor  - DistillationCTCLoss:                       # 基于蒸馏的CTC损失函数,继承自标准的CTC loss      weight: 1.0                              # 损失函数的权重,loss_config_list中,每个损失函数的配置都必须包含该字段      model_name_list: ["Student", "Teacher"]  # 对于蒸馏模型的预测结果,提取这两个子网络的输出,与gt计算CTC loss      key: head_out                            # 取子网络输出dict中,该key对应的tensor  - DistillationSARLoss:                       # 基于蒸馏的SAR损失函数,继承自标准的SARLoss      weight: 1.0                              # 损失函数的权重,loss_config_list中,每个损失函数的配置都必须包含该字段      model_name_list: ["Student", "Teacher"]  # 对于蒸馏模型的预测结果,提取这两个子网络的输出,与gt计算CTC loss      key: head_out                            # 取子网络输出dict中,该key对应的tensor      multi_head: True                         # 是否为多头结构,为true时,取出其中的SAR分支计算损失函数
登录后复制    

结果损失函数中,所有的后续损失函数均继承自标准的损失函数类,主要功能为:对后续模型的输出进行解析,找到计算损失的中间节点(张量),再使用标准的损失函数类去计算。

来源:https://www.php.cn/faq/1421444.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

Pywinrm,一个 Python 管理利器!
科技数码
Pywinrm,一个 Python 管理利器!

Pywinrm 通过Windows远程管理(WinRM)协议,让Python能够像操作本地一样执行远程Windows命令,真正打通了跨平台管理的最后一公里。 在混合IT环境中,Linux机器管理Wi

热心网友
04.07
全网炸了!5亿人用的Axios竟被投毒,你的密钥还保得住吗?
科技数码
全网炸了!5亿人用的Axios竟被投毒,你的密钥还保得住吗?

早些时候,聊过 Python 领域那场惊心动魄的供应链攻击。当时我就感叹,虽然我们 JavaScript 开发者对这类套路烂熟于心,但亲眼目睹这种规模的“投毒”还是头一次。 早些时候,聊过 Pyth

热心网友
04.07
Toga,一个超精简的 Python 项目!
科技数码
Toga,一个超精简的 Python 项目!

Toga 是 BeeWare 家族的核心成员,号称“写一次,跑遍所有平台”,而且用的是系统原生控件,不是那种一看就是网页套壳的界面 。 写了这么多年 Python,你是不是也想过:要是能一套代码跑

热心网友
04.07
Python 异常处理:别再用裸奔的 try 了
科技数码
Python 异常处理:别再用裸奔的 try 了

异常处理的核心:让错误在正确的地方被有效处理。正确的地方,就是别在底层就把异常吞了,也别在顶层还抛裸奔的 Exception。 异常处理写得好,半夜不用起来改 bug。1 你是不是也这么干过?tr

热心网友
04.07
OpenClaw如何自定义SKILL
AI
OpenClaw如何自定义SKILL

1 Skills机制概述 提起OpenClaw的Skills机制,不少人可能会把它想象成传统意义上的可执行插件。其实,它的内涵要更精妙一些。 简单说,Skills本质上是一套基于提示驱动的能力扩展机制。它并不是一个可以独立“跑”起来的程序模块,而是通过一份结构化描述文件(核心就是那个SKILL m

热心网友
04.07

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

美国SEC主席Paul Atkins证实:加密货币安全港提案已送交白宫审查
web3.0
美国SEC主席Paul Atkins证实:加密货币安全港提案已送交白宫审查

加密货币行业翘首以盼的监管里程碑,终于有了实质性进展。美国证券交易委员会(SEC)主席保罗·阿特金斯(Paul Atkins)近日证实,那份允许加密项目在早期获得注册豁免权的“安全港”框架提案,已经正式送抵白宫,进入了最终审查阶段。 在范德堡大学与区块链协会联合举办的数字资产峰会上,阿特金斯透露了这

热心网友
04.08
微策略Strategy报告:第一季录得144.6亿美元浮亏 再斥资约3.3亿美元买进4871枚比特币
web3.0
微策略Strategy报告:第一季录得144.6亿美元浮亏 再斥资约3.3亿美元买进4871枚比特币

微策略Strategy报告:第一季录得144 6亿美元浮亏 再斥资约3 3亿美元买进4871枚比特币 市场震荡的威力有多大?看看Strategy的最新季报就明白了。根据其最新向美国证管会(SEC)提交的8-K报告,受市场剧烈波动影响,这家公司所持的比特币在第一季度录得了一笔惊人的数字——144 6亿

热心网友
04.08
稳定币发行商Tether再扩Web3版图!Paolo Ardoino:正开发去中心化搜索引擎Hypersearch
web3.0
稳定币发行商Tether再扩Web3版图!Paolo Ardoino:正开发去中心化搜索引擎Hypersearch

稳定币巨头Tether的动向,向来是加密世界的风向标。这不,它向Web3基础设施的版图扩张,又迈出了关键一步。公司执行长Paolo Ardoino在社交平台X上透露,其工程团队正在全力“烹制”一个新项目——去中心化搜索引擎 “Hypersearch”。这个消息一出,立刻引发了行业的广泛猜想。 采用D

热心网友
04.08
Base链首个原生DeFi借贷协议Seamless Protocol倒闭 将于2026年6月30日下线
web3.0
Base链首个原生DeFi借贷协议Seamless Protocol倒闭 将于2026年6月30日下线

基地位于Coinbase旗下以太坊Layer2网络Base的Seamless Protocol,日前正式宣告了服务的终结。这个曾经吸引了超过20万用户的原生DeFi借贷协议,在运营不到三年后,终究没能跑赢时间。它主打的核心产品是Integrated Leverage Markets(ILMs)——一

热心网友
04.08
PAAL代币如何参与治理?社区投票能决定哪些事项?
web3.0
PAAL代币如何参与治理?社区投票能决定哪些事项?

PAAL代币揭秘:深度解析Web3社区治理的核心钥匙 在去中心化自治组织的浪潮中,谁真正掌握了项目的话语权?PAAL代币提供了一套系统化的答案。它不仅是生态内流转的价值媒介,更是开启链上治理大门的核心凭证。通过持有并质押PAAL代币,用户能够对协议升级、资金分配乃至战略方向等关键事务投出决定性的一票

热心网友
04.08