pix2text 使用經驗

給同行打雞血 😊

構建結構化的數理領域知識庫:

  1. 提高可訪問性和可搜索性
  • Markdown和LaTeX格式:這兩種格式易于在線發布和共享,有助于提高數學內容的可訪問性。
  • 搜索引擎優化:將PDF內容轉換為標記語言,可以增強搜索引擎的索引能力,使得數學知識更容易被檢索到。
  1. 促進知識整合與共享
  • 跨平臺兼容性:Markdown和LaTeX文檔可以在多個平臺和設備上無障礙地查看和編輯。
  • 版本控制:利用Git等版本控制系統,可以更有效地管理和更新數學知識庫。
  1. 優化內容結構
  • 層次化組織:Markdown和LaTeX提供了清晰的標題、列表、引用等結構化元素,有助于組織和呈現復雜的數學概念。
  • 模塊化內容:將內容分解為小的、可復用的模塊,便于構建和管理大規模的知識庫。
  1. 加強學術交流與合作
  • 公式編輯與展示:LaTeX特別適合編輯數學公式,保證了學術交流的專業性和準確性。
  • 協作編輯:多人可以同時在線編輯同一份文檔,促進學術合作。
  1. 促進知識再利用
  • 自動化處理:轉換為標記語言后,可以更容易地實現自動化處理,如自動摘要、信息提取等。
  • 數據交換:便于與其他數據庫或知識管理系統進行數據交換。

具體的貢獻點:
對Markdown(.md)文檔的貢獻:

  • 簡潔性:Markdown語法簡單,易于學習和使用,降低了數學內容創作者的技術門檻。
  • 即時預覽:許多在線編輯器支持Markdown的即時預覽,便于作者快速校對和格式調整。
    對LaTeX(.tex)文檔的貢獻:
  • 專業排版:LaTeX提供了專業的數學公式排版功能,保證了數學文檔的專業性和美觀性。
  • 學術標準:LaTeX是學術出版界的標準工具,轉錄PDF為LaTeX文檔有助于保持學術出版的一致性。

知識產權隱患

  1. 版權侵犯
  • 如果PDF文件受版權保護,未經授權將其內容轉錄可能侵犯原作者或出版商的版權。
  • 即使是用于教育或研究目的,也需要確保符合“公平使用”(Fair Use)原則。
  1. 專利權
    • 數學理論或方法可能受到專利保護,未經許可的轉錄可能侵犯專利權。
  2. 商標權
  • 在轉錄過程中,如果使用了他人的商標或標識,可能會侵犯商標權。

學術道德隱患

  1. 抄襲與剽竊
    • 在轉錄過程中,如果不正確引用或標明原文出處,可能被視為抄襲或剽竊行為。
    • 即使是轉換格式,也需要確保給予原作者適當的學術認可。
  2. 篡改內容
  • 在轉錄過程中,如果無意或故意修改了原文內容,可能會誤導讀者,違反學術誠信。
  1. 不當使用
    • 將受版權保護的學術作品用于商業目的或未經授權的公開傳播,可能違反學術道德規范。

學術規范隱患

  1. 引用和參考文獻
    • 在Markdown或LaTeX文檔中,必須按照學術規范正確引用所有參考文獻。
    • 忽略或不規范的引用可能導致學術不端行為。
  2. 出版規范
  • 轉錄后的文檔應遵守相關的出版規范,包括格式、署名、版權聲明等。
  1. 同行評審
  • 如果轉錄的內容涉及同行評審的研究,需要確保不違反評審過程的保密性。

應對措施

為避免上述隱患,可以采取以下措施:

  • 獲取授權:在轉錄前,確保獲得版權持有者的許可。
  • 正確引用:在文檔中正確引用所有來源,遵守學術引用規范。
  • 尊重版權:對于版權保護的內容,僅用于個人學習和研究,不進行商業用途或公開傳播。
  • 透明度:在文檔中明確指出內容的來源和轉錄的意圖,保持學術透明度。
  • 遵守法律:了解并遵守相關的知識產權法律和學術規范。

安裝

!pip install pix2text
!pip install pymupdf
該安裝包還依賴 pytorch (pip install pytorch), opencv (pip install opencv-python)

環境準備

  1. c++ redistributable 比 2019 更新的版本。
  2. python 首次調用 pix2text, 程序會自動安裝 pix2text 源文件,某些地區的 github 可能會不穩定,可以下載文末連接文件在對應目錄存放即可。

代碼案例

將 .pdf 拆成若干 .jpg 文件, 再逐一文件進行 .tex 轉化, 最后輸出 .txt 文件

import os
import fitz
from pix2text import Pix2Text
def pdf_to_jpg(pdf_path, output_folder):# 確保輸出目錄存在if not os.path.exists(output_folder):os.makedirs(output_folder)# 打開PDF文件pdf_document = fitz.open(pdf_path)# 遍歷PDF的每一頁for page_number in range(len(pdf_document)):# 打開PDF頁面page = pdf_document[page_number]# 將PDF頁面渲染為圖像pix = page.get_pixmap()# 定義輸出JPG文件的路徑output_path = f"{output_folder}/page_{page_number + 1}.jpg"# 保存圖像pix.save(output_path)print(f"Page {page_number + 1} saved as JPG.")return(len(pdf_document))# 關閉PDF文件pdf_document.close()def convertjpgtotext(output_folder,num):for page_number in range(num):img_fp = f"{output_folder}/page_{page_number+1}.jpg"p2t=Pix2Text.from_config()outs = p2t.recognize_text_formula(img_fp, resized_shape=768, return_text=True)with open('output.txt', 'a', encoding='utf-8') as file:file.write(outs)
# 使用示例
pdf_file_path = 'example.pdf'  # 你的PDF文件路徑
output_directory = 'output_jpgs'  # 輸出JPG文件的目錄
num=pdf_to_jpg(pdf_file_path, output_directory)
convertjpgtotext(output_directory,num)

此外目前大陸線上的大語言模型普遍具有這個功能,但是由于計算資源較大經常無響應, 可以采用上述代碼在本地進行逆轉換。

https://115cdn.com/s/swhgs363ndk?password=xaf8&#
pix2text.rar
訪問碼:xaf8

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/895703.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/895703.shtml
英文地址,請注明出處:http://en.pswp.cn/news/895703.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux(centos)系統安裝部署MySQL8.0數據庫(GLIBC版本)

安裝前檢查服務器glibc版本,下載對應版本包 rpm -qa | grep glibc mysql安裝包及依賴包已整理好,下載地址:https://pan.quark.cn/s/3137acc814c0,下載即可安裝 一、下載MySQL mysql安裝包及依賴包已整理好,下載地址…

6.2.圖的存儲結構-鄰接矩陣法

一.鄰接矩陣法存儲不帶權圖: 結點不帶權值: 1.左圖的無向圖中,A到B直達的有一條路,所以A行B列的值為1; 左圖的無向圖中,A到F沒有直達的路,所以A行F列的值為0; 結論:無…

【VB語言】EXCEL中VB宏的應用

【VB語言】EXCEL中VB宏的應用 文章目錄 [TOC](文章目錄) 前言一、EXCEL-VB1.實驗過程2.代碼 二、EXCEL-VB 生成.c.h文件1.實驗過程2.代碼 四、參考資料總結 前言 1.WPS-VB擴展包 提示:以下是本篇文章正文內容,下面案例可供參考 一、EXCEL-VB 1.實驗過…

用deepseek學大模型05邏輯回歸

deepseek.com:邏輯回歸的目標函數,損失函數,梯度下降 標量和矩陣形式的數學推導,pytorch真實能跑的代碼案例以及模型,數據,預測結果的可視化展示, 模型應用場景和優缺點,及如何改進解決及改進方法數據推導。…

2025年02月17日Github流行趨勢

項目名稱:OmniParser 項目地址url:https://github.com/microsoft/OmniParser 項目語言:Jupyter Notebook 歷史star數:8971 今日star數:969 項目維護者:yadong-lu, ThomasDh-C, aliencaocao, nmstoker, kris…

RocketMQ 5.0安裝部署

0.前言 在微服務架構逐漸成為主流的今天,消息隊列如同數字世界的快遞員,承擔著系統間高效通信的重要使命。 Apache RocketMQ 自誕生以來,因其架構簡單、業務功能豐富、具備極強可擴展性等特點被眾多企業開發者以及云廠商廣泛采用。歷經十余…

Ubuntu 22.04.5 LTS 安裝企業微信,(2025-02-17安裝可行)

一、依賴包(Ubuntu 20.04/Debian 11) 點擊下載https://www.spark-app.store/download_dependencies_latest 1、 下載最新的依賴包。 請訪問星火應用商店依賴包下載頁面, 下載最新的依賴包。2、解壓依賴包 </

如何使用 HPjtune 分析 Java GC 日志并優化 JVM 性能

HPjtune 是一款用于分析 Java 應用程序垃圾回收&#xff08;GC&#xff09;日志的工具&#xff0c;主要用于優化 JVM 性能。雖然 HPjtune 本身并不直接生成 HTML 格式的報告&#xff0c;但可以通過結合其他工具或方法將分析結果導出為 HTML 格式。以下是實現這一目標的步驟和方…

國產FPGA開發板選擇

FPGA開發板是學習和開發FPGA的重要工具&#xff0c;選擇合適的開發板對學習效果和開發效率至關重要。隨著國產FPGA的發展&#xff0c;淘寶上的許多FPGA開發板店鋪也開始進行國產FPGA的設計和銷售&#xff0c;本文將對國產FPGA和相關店鋪做個簡單梳理&#xff0c;幫助有需要使用…

Java高頻面試之SE-22

hello啊&#xff0c;各位觀眾姥爺們&#xff01;&#xff01;&#xff01;本baby今天又來了&#xff01;哈哈哈哈哈嗝&#x1f436; Java中的Optional了解多少&#xff1f; 在 Java 中&#xff0c;Optional 是 Java 8 引入的一個容器類&#xff0c;用于顯式處理可能為 null 的…

使用OBS和nginx實現直播流

使用OBS和nginx實現直播流&#xff0c;如 1&#xff0c;下載OBS OBS用于視頻錄制和直播的免費開源軟件。在 Windows、Mac 或 Linux 上快速輕松地下載并開始流式傳輸。官網下載 2&#xff0c;下載nginx 注意nginx需要下載帶gryghon版本&#xff0c;這個才有rtmp模塊&#xff0…

PyTorch 源碼學習:閱讀經驗 代碼結構

分享自己在學習 PyTorch 源碼時閱讀過的資料。本文重點關注閱讀 PyTorch 源碼的經驗和 PyTorch 的代碼結構。因為 PyTorch 不同版本的源碼實現有所不同&#xff0c;所以筆者在整理資料時盡可能按版本號升序&#xff0c;版本號見標題前[]。最新版本的源碼實現還請查看 PyTorch 倉…

python實現jaccard系數得出兩個集合的相似度

python實現jaccard系數得出兩個集合的相似度 1、簡介 計算兩個集合之間的Jaccard系數是一種常用的方法,用于衡量這兩個集合的相似度。 Jaccard系數定義為兩個集合交集大小與它們并集大小的比值。 Jaccard 系數的值范圍在 0 到 1 之間,值越大表示兩個集合越相似。 2、求兩個…

小愛音箱控制手機和電視聽歌的嘗試

最近買了小愛音箱pro&#xff0c;老婆讓我扔了&#xff0c;吃灰多年的舊音箱。當然舍不得&#xff0c;比小愛還貴&#xff0c;剛好還有一臺紅米手機&#xff0c;能插音箱&#xff0c;為了讓音箱更加靈活&#xff0c;買了個2元的藍牙接收模塊Type-c供電3.5接口。這就是本次嘗試起…

Pycharm+CodeGPT+Ollama+Deepseek

首先&#xff0c;體驗截圖&#xff1a; 接著&#xff1a; 1、下載Ollama&#xff1a; Download Ollama on macOS 2、下載模型 以1.5b為例&#xff0c;打開命令行&#xff0c;輸入: ollama run deepseek-r1:1.5b 3、Pycharm安裝Code GPT插件 打開PyCharm&#xff0c;找到文…

如何確保 for...in 循環按照特定順序遍歷對象屬性

由于 for...in 循環遍歷對象屬性的順序在 ECMAScript 規范中沒有嚴格規定&#xff0c;若要確保按照特定順序遍歷對象屬性&#xff0c;不能直接依賴 for...in 本身&#xff0c;不過可以借助一些其他方法來實現。以下是幾種常見的解決方案&#xff1a; 1. 使用數組存儲屬性名并排…

25/2/17 <嵌入式筆記> 桌寵代碼解析

這個寒假跟著做了一個開源的桌寵&#xff0c;我們來解析下代碼&#xff0c;加深理解。 代碼中有開源作者的名字。可以去B站搜著跟著做。 首先看下main代碼 #include "stm32f10x.h" // Device header #include "Delay.h" #include &quo…

Qt中基于開源庫QRencode生成二維碼(附工程源碼鏈接)

目錄 1.QRencode簡介 2.編譯qrencode 3.在Qt中直接使用QRencode源碼 3.1.添加源碼 3.2.用字符串生成二維碼 3.3.用二進制數據生成二維碼 3.4.界面設計 3.5.效果展示 4.注意事項 5.源碼下載 1.QRencode簡介 QRencode是一個開源的庫&#xff0c;專門用于生成二維碼&…

【Android開發】華為手機安裝包安裝失敗“應用是非正式版發布版本,當前設備不支持安裝”問題解決

問題描述 我們將Debug版本的安裝包發送到手機上安裝&#xff0c;會發現華為手機有如下情況 解決辦法 在文件gradle.properties中粘貼代碼&#xff1a; android.injected.testOnlyfalse 最后點擊“Sync now”&#xff0c;等待重新加載gradle資源即可 后面我們重新編譯Debug安裝…

前端面試手寫--虛擬列表

目錄 一.問題背景 二.代碼講解 三.代碼改裝 四.代碼發布 今天我們來學習如何手寫一個虛擬列表,本文將把虛擬列表進行拆分并講解,然后發布到npm網站上. 一.問題背景 為什么需要虛擬列表呢?這是因為在面對大量數據的時候,我們的瀏覽器會將所有數據都渲染到表格上面,但是渲…