From 7c64e29ffbf4ad2ce6c60d76d7256c2228517463 Mon Sep 17 00:00:00 2001 From: oneao Date: Mon, 30 Jun 2025 17:29:28 +0800 Subject: [PATCH] u --- code/crane/crane-api/.idea/encodings.xml | 2 + code/crane/crane-api/crane-boot/pom.xml | 8 +- .../com/crane/boot/CraneBootApplication.java | 2 +- .../src/main/resources/application.yml | 4 +- code/crane/crane-api/crane-common/pom.xml | 4 +- .../src/main/resources/application.yml | 2 + code/crane/crane-api/crane-log/pom.xml | 7 +- code/crane/crane-api/crane-test/pom.xml | 34 + .../java/com/crane/test}/DataController.java | 2 +- .../src/main/java/com/crane/test/Test.java | 61 ++ .../src/main/resources/application.yml | 2 + code/crane/crane-api/pom.xml | 7 + .../集装箱号识别/image-20250630093753262.png | Bin 0 -> 78745 bytes .../集装箱号识别/image-20250630141231138.png | Bin 0 -> 92256 bytes notes/后端开发/python/大模型-集装箱号识别.md | 21 - notes/后端开发/python/集装箱号识别.md | 663 ++++++++++++++++++ 16 files changed, 784 insertions(+), 35 deletions(-) create mode 100644 code/crane/crane-api/crane-test/pom.xml rename code/crane/crane-api/{crane-common/src/main/java/com/crane/common => crane-test/src/main/java/com/crane/test}/DataController.java (97%) create mode 100644 code/crane/crane-api/crane-test/src/main/java/com/crane/test/Test.java create mode 100644 code/crane/crane-api/crane-test/src/main/resources/application.yml create mode 100644 notes/后端开发/python/assets/集装箱号识别/image-20250630093753262.png create mode 100644 notes/后端开发/python/assets/集装箱号识别/image-20250630141231138.png delete mode 100644 notes/后端开发/python/大模型-集装箱号识别.md create mode 100644 notes/后端开发/python/集装箱号识别.md diff --git a/code/crane/crane-api/.idea/encodings.xml b/code/crane/crane-api/.idea/encodings.xml index a820ac8d..3afa9e4b 100644 --- a/code/crane/crane-api/.idea/encodings.xml +++ b/code/crane/crane-api/.idea/encodings.xml @@ -15,6 +15,8 @@ + + diff --git a/code/crane/crane-api/crane-boot/pom.xml b/code/crane/crane-api/crane-boot/pom.xml index 5b42ad17..b9b15467 100644 --- a/code/crane/crane-api/crane-boot/pom.xml +++ b/code/crane/crane-api/crane-boot/pom.xml @@ -17,12 +17,14 @@ - + + org.springframework.boot + spring-boot-starter-web + com.crane - crane-common + crane-log - \ No newline at end of file diff --git a/code/crane/crane-api/crane-boot/src/main/java/com/crane/boot/CraneBootApplication.java b/code/crane/crane-api/crane-boot/src/main/java/com/crane/boot/CraneBootApplication.java index dd6c6ad0..858bfaa6 100644 --- a/code/crane/crane-api/crane-boot/src/main/java/com/crane/boot/CraneBootApplication.java +++ b/code/crane/crane-api/crane-boot/src/main/java/com/crane/boot/CraneBootApplication.java @@ -3,7 +3,7 @@ package com.crane.boot; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -@SpringBootApplication +@SpringBootApplication(scanBasePackages = {"com.crane"}) public class CraneBootApplication { public static void main(String[] args) { SpringApplication.run(CraneBootApplication.class, args); diff --git a/code/crane/crane-api/crane-boot/src/main/resources/application.yml b/code/crane/crane-api/crane-boot/src/main/resources/application.yml index 81d2279d..8f679e30 100644 --- a/code/crane/crane-api/crane-boot/src/main/resources/application.yml +++ b/code/crane/crane-api/crane-boot/src/main/resources/application.yml @@ -1,4 +1,6 @@ server: - port: 8080 + port: 8082 tomcat: uri-encoding: UTF-8 +logging: + module-name: 启动模块 diff --git a/code/crane/crane-api/crane-common/pom.xml b/code/crane/crane-api/crane-common/pom.xml index dce3d0dd..ba566410 100644 --- a/code/crane/crane-api/crane-common/pom.xml +++ b/code/crane/crane-api/crane-common/pom.xml @@ -13,8 +13,8 @@ - org.springframework.boot - spring-boot-starter-web + org.springframework + spring-web diff --git a/code/crane/crane-api/crane-common/src/main/resources/application.yml b/code/crane/crane-api/crane-common/src/main/resources/application.yml index e69de29b..1455741f 100644 --- a/code/crane/crane-api/crane-common/src/main/resources/application.yml +++ b/code/crane/crane-api/crane-common/src/main/resources/application.yml @@ -0,0 +1,2 @@ +logging: + module-name: common模块 diff --git a/code/crane/crane-api/crane-log/pom.xml b/code/crane/crane-api/crane-log/pom.xml index 468424dd..3d21f9ac 100644 --- a/code/crane/crane-api/crane-log/pom.xml +++ b/code/crane/crane-api/crane-log/pom.xml @@ -10,11 +10,6 @@ crane-log - - - 21 - 21 - UTF-8 - + 日志模块 \ No newline at end of file diff --git a/code/crane/crane-api/crane-test/pom.xml b/code/crane/crane-api/crane-test/pom.xml new file mode 100644 index 00000000..f7c29662 --- /dev/null +++ b/code/crane/crane-api/crane-test/pom.xml @@ -0,0 +1,34 @@ + + + 4.0.0 + + com.crane + crane-api + 1.0.0 + + + crane-test + + + + com.crane + crane-common + + + + com.crane + crane-log + + + com.fasterxml.jackson.core + jackson-databind + + + + com.squareup.okhttp3 + okhttp + + + \ No newline at end of file diff --git a/code/crane/crane-api/crane-common/src/main/java/com/crane/common/DataController.java b/code/crane/crane-api/crane-test/src/main/java/com/crane/test/DataController.java similarity index 97% rename from code/crane/crane-api/crane-common/src/main/java/com/crane/common/DataController.java rename to code/crane/crane-api/crane-test/src/main/java/com/crane/test/DataController.java index 4a5255c4..fad11e90 100644 --- a/code/crane/crane-api/crane-common/src/main/java/com/crane/common/DataController.java +++ b/code/crane/crane-api/crane-test/src/main/java/com/crane/test/DataController.java @@ -1,4 +1,4 @@ -package com.crane.common; +package com.crane.test; import org.springframework.web.bind.annotation.*; diff --git a/code/crane/crane-api/crane-test/src/main/java/com/crane/test/Test.java b/code/crane/crane-api/crane-test/src/main/java/com/crane/test/Test.java new file mode 100644 index 00000000..c003bff7 --- /dev/null +++ b/code/crane/crane-api/crane-test/src/main/java/com/crane/test/Test.java @@ -0,0 +1,61 @@ +package com.crane.test; +import okhttp3.*; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ObjectNode; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.Base64; + +public class Test{ + public static void main(String[] args) throws IOException { + String API_URL = "http://localhost:8080/ocr"; + String imagePath = "./demo.jpg"; + + File file = new File(imagePath); + byte[] fileContent = java.nio.file.Files.readAllBytes(file.toPath()); + String base64Image = Base64.getEncoder().encodeToString(fileContent); + + ObjectMapper objectMapper = new ObjectMapper(); + ObjectNode payload = objectMapper.createObjectNode(); + payload.put("file", base64Image); + payload.put("fileType", 1); + + OkHttpClient client = new OkHttpClient(); + MediaType JSON = MediaType.get("application/json; charset=utf-8"); + RequestBody body = RequestBody.create(JSON, payload.toString()); + + Request request = new Request.Builder() + .url(API_URL) + .post(body) + .build(); + + try (Response response = client.newCall(request).execute()) { + if (response.isSuccessful()) { + String responseBody = response.body().string(); + JsonNode root = objectMapper.readTree(responseBody); + JsonNode result = root.get("result"); + + JsonNode ocrResults = result.get("ocrResults"); + for (int i = 0; i < ocrResults.size(); i++) { + JsonNode item = ocrResults.get(i); + + JsonNode prunedResult = item.get("prunedResult"); + System.out.println("Pruned Result [" + i + "]: " + prunedResult.toString()); + + String ocrImageBase64 = item.get("ocrImage").asText(); + byte[] ocrImageBytes = Base64.getDecoder().decode(ocrImageBase64); + String ocrImgPath = "ocr_result_" + i + ".jpg"; + try (FileOutputStream fos = new FileOutputStream(ocrImgPath)) { + fos.write(ocrImageBytes); + System.out.println("Saved OCR image to: " + ocrImgPath); + } + } + } else { + System.err.println("Request failed with HTTP code: " + response.code()); + } + } + } +} diff --git a/code/crane/crane-api/crane-test/src/main/resources/application.yml b/code/crane/crane-api/crane-test/src/main/resources/application.yml new file mode 100644 index 00000000..111e3bc4 --- /dev/null +++ b/code/crane/crane-api/crane-test/src/main/resources/application.yml @@ -0,0 +1,2 @@ +logging: + module-name: 测试模块 diff --git a/code/crane/crane-api/pom.xml b/code/crane/crane-api/pom.xml index 10c1a5b3..a9d1c2e4 100644 --- a/code/crane/crane-api/pom.xml +++ b/code/crane/crane-api/pom.xml @@ -16,6 +16,7 @@ crane-common crane-boot crane-log + crane-test @@ -80,6 +81,12 @@ crane-log ${crane.version} + + + com.crane + crane-test + ${crane.version} + diff --git a/notes/后端开发/python/assets/集装箱号识别/image-20250630093753262.png b/notes/后端开发/python/assets/集装箱号识别/image-20250630093753262.png new file mode 100644 index 0000000000000000000000000000000000000000..06e029a041e31990f9e155ba576632402edf771c GIT binary patch literal 78745 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�rGIPq;0UkVg}vL-h}Md)ChFL?RWR*s1< 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 Pz>mDNid30|ap3;}0!=*o literal 0 HcmV?d00001 diff --git a/notes/后端开发/python/assets/集装箱号识别/image-20250630141231138.png b/notes/后端开发/python/assets/集装箱号识别/image-20250630141231138.png new file mode 100644 index 0000000000000000000000000000000000000000..c830e1d5fed9da7820582b4a15643c9a2422e891 GIT binary patch literal 92256 zcmd431yEe;x~@xt6C}91I|O%kcY*|hyIbQDJZOTuyL;pA4#6RKaCbXRGUr@t?Y+;v zbx+m3b*rF?YP!0sNB`abGv4?4MyR5^1Oglm92giFf|R7FG8h>6JJ2r#%v;bcKCuj( zU|>XGQldhtZmEZ9W$`5~a~(Gq(KgB#08&*clT^%yUEMF7d%Vi$zlA7o-Ljq-kC^32)zgW+-$$J z0m1(Ky@r@fjQso0+AM68-~Sd(@xxZ$*oRcV<${#fS%JH#kbVX)N*R!A1Jb>qWH}=R zUf|R1`tz4GucX*2xfKb4O+I>7O*yx>U-CE-UO>4yIc{Z%brYU(K67A+)G0`)6updz zSnd{pl~qIu%h(1RFgI1YARg`#eYl1eOQdAw_uH2m^Pyx@lz)?x*C3^{5~`Z=5-q39 zT}zmFo%qfPNj!EuBQ9beh#*Izjg-e396#!)m&L%4ew0%%rk9D|+r{N}D2+ ziBI{_?HQfVy^GkR-##8sg&U4w-EQ^vWHGtWq9vfx4?^r6T_Voc*Jj^R9~C5Ox-p=qAc+{??eQ8UDsAO7WU0?sz>||HUZQ< zpn&MT!cGeH7IG^%b}0(OFmJ63&$~W^lNcbm8jf3pYl`bT^_EX~XWbfj;o)knyE#SQutXQF z<#W=zy z!<74bj5cj~#OJu`wjfYb%XtnNgU;+|wg&{C^aHJ~Ilv=zW~{sj zNKYXW+I*oRS%I3)WffjJ06mOK)FisUA4J$fIKYSmb#h8F^RZBOLCH%hn@S( zpqaM88OcZL5Vk?;m$hwlO&z((8EJhQ9!63A3A%rFSbG1&WzGw)pHe%*-%kW9RNGum zm;TN9X(|pb!uMX3y;Xpl{O2Yr2>OvHWg8f?-jTKOx}6j0EwtjASt_c6ug_DostH`# zr0BhduXtBWzk6|S{SkA0cZKRpJHjP;NP0Ga0gBq6ygj6pO)25Q42cpHg3!gq8BDz(X zvT6g-RaonMOci7z)zhQbK1e~md-IH`s zl|fw#lZLNIoHxS-uf`=vZ1mO|XC2k6$I(Uc1+B>k%nx>j?6ghQtHu5d#dPt}D-Mzj z$Q(V@ogsBe^~_U_Z15NX+s7?@XIhi&GJ55!{)w{>x3@teMXC*}#d~bvk_<8HaZO1c zBA4p@P-pWjVDJhi?M?kh}F%# zxgezKS;6u`42=nnN5%f6Gsdgz)4&pT!3DtTaLD<|ywJ%lUX`LvP<+*ClX|kZ1q%k| zOgMdA4{W9Y!%1#gzBl$SUD|8>MQfU(G({d0A88>~2sF>^_Hu^=Q`9K)WRqlAc0h~* z(%+z1@F80~QfX=_BkwD+6C=SI z56)HtynZV6u)tVIk!%w2c2?a*)@qS%x#~duY{mi`eQ=7)2*p9!egYv8S%Tz>LyZHS zf+B_t=bFO=x66clB+QULJ)LPv%v9cc%Ob*0GEaV+iW*usja9(6jn#uHy7ImdwFX~P z`yBG#8lB9|F6xMMurJl|!YfPO5wmze*L*r+xd}Rf2pzEGiFbY=vvi+H2tJk`XF(70MWyO2knyZaOV9pv}k4?vyFUsEnR_SI@O zIS62aJTt*G(j!mjp7B}^6^0hjDbt?KKU{f9D-v1aSYe-edFV7ypxGbLrbIu|HR+bO zF|bspQuR{2;ZY@)j-*MVH6_sMrmR~6Y_h*d4Wx`>fs1e-sy=Kjtt{gz=|d*1a7+uO z80KCYR7VFhrZQh@NwRP)BG0F*zND$?P4S?(?iMWfZH+*~*>m)j6O;R8y!CCL_QJ?q zJey>VV%7wfKP+o;6MSpN5T@5dnFoBoj{dR@yGUG5uRHhVmXW+_>+uP7cA0P#RqPWt z9OcTKvtDUl=T=?(M2AwXM(CN~_Ir==PwXk{%u-M2w=SWkB0cyvM<$4G6(6jO7T~_u}i3YpEheFZz61-NAoCpQ$_;?)4 zyDSW(e;}qS9rj_b4kCUMH4vTcvHC=C7bF5&D0hiw!T81*zwA2iZB1?jzMkzw$Cn>j zJ8MXCST$=h5>`hC?VLqsCTh>#O#4kEM;+nM>erd=xm`vxya*CgT&(r?ON@`RoUFte z=0__~Z#GcYULLgBYKoJ>=aazr|GZt;q<`pQJodJfeUF8zV6ldN#N-LSxfzQJ0ygE! zrHcNv$!Cg6%PO^G0%TIGbmBbks!FM#EBf`8OiyPe82?*sYABpphLhxH^T+6i)ll2s z4hG!cjMpPDz;`@D0U|@ty_z%sCO_PNU=TZzcy=u7!FB;iIFfUvLH^=L_MzMjxX~0&sS0C7H5j*?7IQf)Vg!4*ERt z{CDu1m_*ras2}iVRt>Qgbsq(b9@;rEt>k;aJB^I~Pxxbr_!95E8V?*gOAIaH0qtHH z)WJ3|(0e7c(lQn>`@q^1LGR&AN9@M}&+lKUjXIHP0xgYTDLdu72QX(FcT7oiZ-OOX z20d8#>CV&ybI=(9C;Jl5qt!+>krsTf_PTu)Yyr= zpbGDrE+SI+GC8GfjR9Ku}VjAOq%*>(?A&rj|oEn4zleSuQ8UGvRmGB;7*gDHP zCy{b1EAd{Z!Vo!dS}Ko_P8-pBYYYO+)ciMYGvmzpz-NkMAZ$^Plwq`PZMY;}F?a;p zeWO`LEVyS?!sio#diJw;Igu2Dt`Oh*5ir5&G%WU#G{PSE6hjE|$D>i^LT47c9siT?1R9=Z z8_vHx#tZH1aTxc9J4yc+{n~n2w342yH0BRSygk{i<@Ex+jg)STV1zl(|X}Te}|rp8?)l@&8MJ2PXBiAjlO7 z8n7>YK)|7{0j9wYC?1B5_ErBHGp$*!>U;PE)Jn00nKx;U4;F%>7BDh7(f^_L|6j^e z`0?`}%7aGS`Tk!iPnBRS;E|pxP4VGU0DXM6W`LPt88K%M8(iI7*n#5E)eyUvp%M?373&QD|gfl%v=|*tG~)p67+_F z{XB8XfGl+JWF0kxk1s#qZ-|fV-zpDO98Q36A;{w+`wZ}R39*)$a|U~sk)q@Bc@bs1 zk+=|zNr>!{x^Z5?v@~Y|l;s)Jvl_lBYL)&9O%putcvZas9~G)GvI$$Nt8@p;LtzeF z#*~P}qf|Z`?X{(Qpx#lx8b7&SOfU6Vdh)MM}8}wn1}^IrwbuUCiAFai`~1? z?kDzk;CDHlA?zaZ@)dl({hF%lGNnAUUf#vs>imtZDY!{Q%4Qp9`Dmkcv2D??%VGW# z7a&sRVtN{v#%DHWa!crODwj?86C-Fw66S0R19rwJ&+e>&ln77R+V03|1*b;+Cyts2 z!ag@gNtrp&`5SF6ZoMvDHqu8)kqb8o#gVf8hrN!ykpAmPi%P9pC*B{w#CgX;1|M(E z&L%G|Mm!p}5~;UThHj5w>7Rfnxbc%P0YxAPCVKbYWnO8Fj zpFdz0?eeCm?-T+1|B&-^Gs$b^|6#lwbDgLDuNF@>M~}6|5}-3y8vf)mpvI2IF4J?3 zwCH`vfsR|9MwkRRIa~*3+gJ{j(u2RKeLBen#j{-7eJqI!YzG>T(dsy`T&!)09&oc~ zZ{<`1?f0>1BXpZ^BFX^B>?y(Te)n{L`FI_S1n^)0_ipEp6L|Laa(91PffF-)E)qe$ z)tlrMcy8g-=xiOt&1&67Q}Zmnw7G9+*e%#?@Z-&+J-^lo->DY%eyX3LSE?VraQwKx zRw1k5Q<;1Uo41syaSwwt#E_Tc*X>Y}=(Cy*Ky~x*vSi=z4V-yQ(kk=uC7h%_7Iw{i zo*9{x=LxcbVzFe^BkuBM%js|B6KHK~Q%4GXCia5RiP<8YP{Tg9;;M;Q*Ji%Qiv`f_ zZZG!vUM9z_c1cqnc{JOF1oYq$!FtY@zjNg^OPBh|82C+vfh($-iZ>1JTojAGbz7X$ zK0pnR@COROVDM~FSH)TF-bxqozH$G(mU^N_Nk$+OYqTDjb!jHM|Aoa}s}?0;yJqvU zO^u+zn>FZWcYIc#1&bpDbD$xc&@Uc_D z-xBUcl^SWe!qeXE3DFFp3q)Q#?cci;P6hjOTwCsUaXB|$e;hp7~n zDT=ubf~}~(%KuLPghQ=knHZlw_7NQTm9a2i)cG_&+WwIa??*IyENcqQ`7eUGlyyFN z3)4B(6%1(;e#q&AFB0nAFLd#gf)1fGvj_riq)vJ%IwbLNo?QJhw%Pc=B|*o!Trm75NF&z^QA0B!h2N!?N^2{R0wH}zgyw%G%Sus8<{pm6Hhz~b-JJGLE94$Dl>5{yWn|%^w3jc;!7rKcW zv*9s4g~OuUS7`|z{}w0KCc*dF0A7lGpiNBT;%``hm?*B3W*S%b$q*{u(){f7tJBk+#ZGE-U-$+%;xIK%*} zJ$$ZTosK5vOalS&Q!!h*^ya~w*Bz72UaqU@`G@D~;TWLhd>8~xQJ(RGWz?dR0-mI9 zq5Yj|vmJWVYOxA;di}@yqe#VTM)ilUKC}Mu32q-pb5x!6Y}Jy)#-`$L%!sr?R=Y^i z)GAUmmmFnGPD~58GI#j=O}gKZB^0_a*c>BVXH#3bnp4xsd=dx)6n>y%8z03+cPy!H z^TU*aVYfbJXQsffTxFJbZ*UBSaBhYtsLA10iD8W8%$E%w?e>*f{YL2_+n4@E-)-4R zRP!cD)|&+d-ZCd~dNVeYPXIU^y{bZX2YuQ49vd7=pp+bw-E+)_bdZ3f*izwgIQ~x- zSpS*<2VwSG6%+o+0-Jcn&GvxWgfpNpkW=&EcNo}P+gf%k%{aQU1r}F0F;(`TVPMf| z6BZ$n{Z*QG`rZgOKHfAfm@m*mO*&w!E1s3RaLIvDi8<=*yT6$S4-Cq@ozSSE_g%z- zJ2{{EI5&Yp|2QCsN5D3fg`?%RQinM31i7b}KJ}I zB^=j)%n5}87^@#q?(hIwk*4r>+E~t=OGH{m-8OMUtjQj#w9nRb(;hk-+)4PZEeoK< zCMFi^Bj|&ERT-}nHeOP_U`@8Ld0K^NIs{LRRF;NxUE~=;uR&w9v_F2B9DiliZw1PN zz3-lcK_6TC8;i(o*dYVhU2R0I0_UYcWFhR*z-=oQWgwaX{gsMY=n;8_tbPRn!7usf zL>7KbMGc&eGE^8l`o5duR4`aGT6BV|vee%pA#4G!?AetLYrApAYWJi9OSGW3&2R@C z(y%+fufZ`wyM-PoWx6NlqO&!ff8G~o7{T4KgeaO=Sz1v=(YWd4@6A_+N7m4HFBYet z$x;MkVl59 zy;4UpfNVAz7uR|7#OE#Avjo-;a?8>TSU)J3f&J#ejeRVFb(@LwYp_9=ldXw9SVR1o zfwBZ5;s(bNRF(dv%W!B7lQ1<37x~ z)FYv1Z~2J&R)c>q)dnMkVz(l`C_mgRo$7o_iF2>5{K0@8fuf?ehn`shhzhfYF8nr5 z7n;*(==| zSbc_KEheo$u{H*vK&3mG_vXYt z%uO<37?t*Q1Fg^}&EvqafmrObOC2dshj7EqG6^u@XeT80ygZ+0ASA<58SM^6y=Dkok@+JKB;;DmujW~&(8O(x2U%PLJ$)LY$aBBiS5$R=xCXap8n2O1ULY@mN zx_h->8GzI;>lTPjMid0S`lvVB0~|kx?^w&HoaB@BL0`LDrA?}SYPtz@ z)yp&1dP&#XTB#rV<%sz!FhT!Tr>JfyiWeJfvr0HWw)+a>FnYyIj; z$BIWkX{LB;A7w+?DT(SGt#VVMN?%^q*0SP*A#`)|2ls>sz4(zPfnvx#3v6WF97KBB z5!8k!5%jM2<@YuCel)u@Ui4{t-CGXyj#d!FXG4umy^Q+ahXfEx6!BQic8%bZ3Uf#z{PmP`R8X-YVU^Cb7aKS zvTU7DGa)bI*5TH|1iXu3;4SCAhYbe^}o^xdZsGV9J_+usX%sykNjzG2Hv zBDF?}aEA?IQ_c7#$fuG~xB&0cEnV1h`Nq3_$o;Ov5b>)__28Wz;N5L-)0&j^q@`Ez zzO{F&+O%a~3l3&^EQo^QBR$0mUDg-vK)2F@co@E7nSt#FD&;yzD0i_P=i;j8O2u&P zqyBrTlkbiMiI+y-iRw=MbmY!Q;Y*Mmzpbtc^wp6`U2P~aP>|25>JGMDp?#e*-QbR~ zIGGf5^5C_^wCsR(+xi78KWM(V?y-_ynj3w4Vrn+{xjIn$VuQj4yR5JP)TCBxev(lx zK8RU0C=HZECs11%;5F`xzI&1sjMG`die3@jn8XRiDObsfS+O%YPm(1tmyk9`uzc&4 z4Spr-_11ztV5PG5y{fxqmZd&hgQmX&iJ`#H>TJrLjz-oGfGUSyzL*|;6Vta9yZn@O z0LI=;`~pi_^hX(o3D$vb$6}i~ufbXCJvdF~C}u$dlR7=?-{_;%FTY>>q=`lCg@M19 zkznfGT}w9VkZ00>_w#LEH5MbmFZPm63O*6tiVI4Fg`%$QFa%Sz!C1>h4lx5tWDyyG z_FamLn6}m85uEc=_$5+}e%{*DfzypuKiLU9>m2mS!bvxQ503D%R>ZM^5~>_D3U|y~ z$WMiV1656h;+oyWIU9*KoGe`O1;b|99Z94|vhTeNz@4A@Wim)}T_r1`!702_mk=*B z;iV!#Lk*-OWX=awK*e(lr%4cUhr@+!#&i2pgH@g`S$SKH{xX?)RVkrwu@}w@ zw|{DrUXib-Zx@nhUd_nDR9_|Vu zK!utt^6863x!>r63#7(M2(NK}w8Ui&hS$zYSxn{nBAeE@%D})D%nAc3Tu%&vxv4%) zXbI`PDAfKVG8DxeLU<9D2|WFrp96#3oc643%ZgO*cl-phZ;XG#p?BBPz>UcegLc(% zeB&c;vyr|YxL?^_KV*)8rrJmu4p*9r!+}j9$a8=j3i#5SRGT#QCQ%oG(KTm^5(ak& z^?Pr%j@+0?$*MrkUyH zwMG}N+wDgu;`KOFr^3J%ZT zg8UrdKzWbc#=iW_e;#&P&Qzscc+c^}&giWh)@AXBNNk zs`qJ-df#R)g}j`g^jC51Cy0O!yu^cW>NfQ@=yULQs&J*y!9ZG77dir(7{9y}%49r3 z^zC3LUhv#gvvly#sKARD0yR)k`ZALR^H^b) zP6&#@GQM!Qt|vLVhOYzQX!zCLIi8l5SbVG#TAXT09^;I4)CVfo5Zf9-_Z$YgmX%=F zJ^GZ?dop1@UvnS$v#p*Qm1jTvfb(H8n`?XL!>>^mYfb+x%4p7{5U^XtWy$}a^<89}D$7oe?DMMVbpe7Va z=X4!5ytQvhmb{R%4~%OBn@gSslcuBe5;QS~TJsBE_KqcBFJ>j9(wjHVc(+pJ_n1zQnz2{C= z;2t8KS$cqK&PE6^KCVARAYtWuc_5XY6X;;PS>DWbagm#~o+M1qocp_}Yk=dmawzC+Z(Ih{jS+x|Q6$_IMuR z+jhvX@br{53L^*E2;NGQJ+lWt7kh30CBMCG>b4k;qe;Cx1-U|&a z6zu}KDvpR4gL$$k$s89VqOt;4OkIxHr6vI9mbj!>GMfrIHo7tn^r(X>sd)J4mJ6*S z+#eu9-$m_&N}oW5S%|*R7!hr^0+?~dtoP={6@c1JH~Z2mQzSYLID&6!{YGEn%bTzK z_y`XZ2}8I6Z@~olfaV_BD{;r+&4X`flwJvB+I~`Fj6Ek;hJ+q}7Dc-!bQ2te9n<41 z3KTgtNtbY=3Bo~8gJM6Sq*mf(p2GlNo7)Xvm9gGf!@5F5tDyLDJ$vY%Y_cCiOQ0R5 z2s=TZS2=f(0fDv5O~R+o*?06Me1YIHnumg)-a+rItyQ^rypNU(n$xAqv0uds@Agb| zRpXGJkR@w&c}Pq` zIR$%`XJLg!)Gd86h-Whe!q|NsIoCu~hznU<3c6`C)oZGE5LY5{zxDeTN@zSSndIM% zrecO=k-QZMi=17|Fa_Gd20 zV#EHZ>wJ^vYCn8Qh zX8HFVG3bAqv!M~?>0wKMQ@pa+IV@u7x>`TG=y7bvq#)$refu4M>LHk@?G!w~$MV(+ z3UMxkh(G+F8gmG{&7xmo`jwEZe&`(|{$xJjVHc#=Lj>tP1>z6U5b=~|!SnS_y3jvY zktVlNGw;Pv{)?{`7vHG+ML8*Zi=>zy`jb1QA{U6Q5=KqjWLpdf6!ee6h7{((H@17! zrfTbv;!Q~{sCBtg54BuAl3idi>a=>#;WY$z9U)@9s%1ljXcuM~!&V;JAEljN6`;=g zIW$MxTSRSKny-Ep&0Vp{lg-VX-CczyKHL2Fz;&c~LC2Mw2u8CnovIMbVH<@*q!qWMIpi=Kj)`u{ z59MaTZewN~EL@<80^gNLSq>sph_ePJUJ;sWA+w(k`F5Wa+kjL)r1axdr0OIUx2Cm~hh zqiQ+YwPNztBt)$l#ce!Au?fAl*h?-F13PuOdB=Q&)vxZyPnpv5Ld(!E93$k*%>{faS5 zNfUx}dF(K}zg!-H`1(2_xS<^U5;Kzw@jtoNo`SP&3{i)0xq^{}O#TBhwU~@!e}jzd z6aM1K>bSM-co{EoyK(gWoE#TW4Dlv@S?*H{^`E-#nzx`|at_hqxBwDV)>+e=zj8w$ zd3n#UEoL_@!LgM+6p~d-iQip`+sAhSl65}Bj^MK<E^!Z;q` zH~RK}O)1OCUT? zWd`mx_Jc{jH%$7KK#xRE`JtsT74Rx%y`qcj8%-NDUJ9P5K^V}0%y8Ut&%fHXt6zWI zEaVdk=t9xJ|Ket;%G4=1F!7FuFuVf{YJRRp18p5n zK;I%{i62CUK$BD=UJyp0k&GpEACtLS&z^ci_K&t|?TFv)eI?$O#W_<^!}LxV)`Tz9Cz=?k0!TRfQAhx@6;>rm|QmMpVOwQ-I^{O;kS z!_enr1cAoRYEm6t>UX}Ecso0-1sDSfk~IgBJ}avArmq#3_dHoqyCo9w-5Z^aW6w&3 zsvG1|Jl zpauP-^)DH;7epG*{>nIBIiyvb6vQE|x7%%+t}l3?YRk^l^IN7YBd`C=S1KyXE~-5u z*VGyXASYKv9{0#%S_2C~;lFyVZiZQ|k>9=6D2ctRH%-&Hl9?1pgvb9*qR2C!%D?m> zU$-PD(Tv`7RyUe5xL&!yNXN>gvYXIVMB2HlJWVF`J)yc}fB{WfFry@hsTr<9;Wn&5 z&E!Ms%<1wTimNVEw-bjkFw6j55%HbD{3AT5^Z^Q)3|iy1WOK zG47d|vdItp(Qggo#p0yrkH#6UJS)(O*5hNT3auhACyR=_j9vox^IinXAvqFaFN;h2 z<;$8?NA82UmV<@-%tFg15wEe(HUUn|@nYltgdZfn$V5z5B7NNt{YpXA=*!oA4+*0U zQFNFq+H?Q)lX>?CC_rlBY|h+^Dcs%n58fW2VZP&sdWMNt^~nJ3u%_MZ(N*(2dJ+ZV zj7yfc$V;PEgx9n-B`K9C#G}K8*JdqC7Q_uI*y+UR4@9h|UMig9V0yaWeS+efzsGuT z{k+YxgEj}%JkM{TTo(SsFwa8A_66*JO!qa&(Z9l(#R>S(-_cC=Xa{`JwHbe}!Yx{& z>*ecwqm+@(9?Du${v^dQrE`M<>I|NQx5>%l4HU*(;e!hT&z>8jTkZO5NVC)evgf6= zKIc!+a%eS2rbSm*NX_`oPU8Vvu%i_XJ%e}S5l}No)vqVUJnifUBX&~nDXXIS@Fr6D2sKyP3(r*o2DFKD_|IQ~6-zPwQoNM;5kgsqPt>&g3}JGg}};SC5(h6sJy z`T1I(Z36!@w<-C#x)m|8>JavKXmc@ru_Ty2gx)QahnOv@+?~v% zN6rC_TMhE6hhyS`Pg$x1XQ`LH%{;W_#!uY-*4n$j{L$JO|7h*qS%0+lv6O#l?RaIW z2L*8_T%ZZax||PO!ozSE77aP?gP_h+NFu~`#O*#=^D(WdR4;jk0WLW+6uiuEb1wOR zJVoq%yGXSlD83Pf^%}wrfB@}qV{M{v)ZjRI#cxZtqi8-ipUREan7tNc-J2q$-8QnK ziodfQWEq^*o{26)m=TI*#D@qO9l}G4w2nvPlF2+LGc86!JGl`o7xTFa00wuig13Gr zu)a`QQ`Sip4~OR4yBf8bKgZ>>H7mI6{fGtoNWclCh)CX;Es1~)3{8a4DKE-`^6(C< z6lndwraNUH5s7#NAhGO5zD#Kj_MIE`RcWm+=^O=~hHaq~Ed{)dmP~MLxujUkI$$?z zi{~s@7`eHY#4mVes8l!;@&o0BuBe2ptW343rI&YTTEJt5p@^?vU5nI>fuNS*$N9t} z+Uwfdx55r+%O_ zd@!qPtQ368>yVwOD(X7dz7L0eJ&`FOva`-CqdG z@hvJ7`S4vPd$O2=Q0}I#c71Xlm*5^r1Dtr!koyZK$Texd?6Wdf!12EgAe$N|6|_o^ zHoR}J3OzVQOd7`2J~gPg+F1*uc0cnHa7~@(xcEzdx5w)T1y(WLt;H_iFl$UGKV0Wi zDRjd1YJ$@HNaK3X|AeS7D(4Kd!x-ABo#43PYP~52T`ew4?a|K_i=|sb?j`veMGfC9 z)S@bWr$MD&XTg-^*YuVXW{*+#Vj6m?cd=ly5LoOmj^ZvHfi|%ca`Z{3NdIGd(zkp z)+Cc@-io4C*s&@sOUMDa1*Uk(VMU8Msw(x@WBi*^O@~8xlPh-6qVvAmK!}$TYn3OV zY!zO`f^gy+A%z?4E{z;8DD8uhDv$DjBqVE(pz`du+WJ^NbD8{RMk1@id~Gw~qa1cJO3TEvC*^<}94Qt8N$W-t7fY(fP*dv4Bw z{5}&Xuo+`I``6^7A^~S9A}T0A+FITW(c3tFRCNe0nux8|bg=9Z%LK{qUiHQ!7Lm=_ zi6J|UINMpX?Zz}yj}GJ>KplRQ@b{HnIWQyQ7}kcl-p(Uzo@bq_zul$YV4Iqzx`47D z!b_RSw)wj^q3`Jt;OSHZCB!Bb2glBT=t8nBCi$K7W=EL#OA~63ww&quLu@M!UJq^h zn{1Ba`d5-esPu^1#B;bXh~~;4EA_kj6vSM zcMTJiUsqdkKEtz6L!$c>U+7j5%Kz0+rmm z6f-w~_j-h;*xV&?-+<-v&xQBvs(+Er(2yfe%bHr&fF{IQul|bV&t%w>z8^fpk{q$Kfd#s=Wa8u2g$%KNcAwlvmj*=7V-GUT?GRiC;%D{ zdNC;X5ea)~!5SFsUmNrxBqY?+h5B8`g`D(W;*$QQ0IC1e!u?ADdX1QNH;^$cM*RU2 zzau7K=zuZHD>*KQuiGvxa(uLxc)F{3hF^s913mB8>=$6}ai00V$3)w+ADyXiE)?*?I$pwd?#_0P?xfrXiPO1U zV=&VTGB*tKT&LSX{y1Md!WOkI@-hDh2Fl~P6OS8Gy;T9w1Fcli-rW{%zi7{H2Q;06 zM4>3=%xh}alX9X`(6e(u)vio-JpXxigG(;53r+e@R`8M)ANQE@8`JcbmI6IU$#y{V zIwI=?AESTgK`G3yc@UbbH|!tNJn-L4^U0wmZ>^?~sq18SNiQet7oaAc}nYbin@}J6dXcTjfUPSF6(RWUBtjZe3qjdr!o{= z@+xP3%`m}#$1UB>I1K72cz>Zn(mjt;>Yi;OuNmz$RZ0#u=e^d3dVT$ z)PHY|IODl4iK8RQY%Qfg@}?dQo&Cc~=R2kr1A}f1)6cn?o6pOJFLZK- zEE`mDk$ZzOp>Dx(ExM)4o9qF)*aRI<*K8ap*K1!?WJC3-4M@}!OUmv@r5K8*w22q5qq$vMI zX-eqW%r3*p-rMFX}AgEUAD-VG>Ffs(Q41_2bC#Wo`mp%J^K*k+!ma_L--Q9Z~`5(`R4EYF@a%|sl z*j(taUaG!}PZHqG3tdhJOcZx*`sB~5LO0~BvDZX-6v?x70`7Oj9c9EtXhiZO%9Zb; zJ(L1+i!3$V&xpS;|!{#{>m@4K+}@%fv9YrY-fuN?coN{tSN z9zM1eLhBx`wo~08lSJ9%0gA-)x&5Uf7$*cwm$#LcH;EV6_%HIK^{jW!alCiny5vXQ z{Jq=niTZA!GpMFjcMedYfJmbdmc~@%yhCtD_OEc8vFVA*G&o zO$gvrJuw7qw|5siHwVZBrDi!j zXF|&s7`8P1NAAw=!~1@RkwTQESw={X6FS*te}$1+T>l6o!P5L4M*1}(Zqk7Yl>hyR zI3pqZV?8!v2-SYqpKK-4Cw?ZKcey zYU7%Ownp2&qAXY!SGe7gp&&zhMa^>Y}A zH+(Io?1T4$Zrz4B#<06{v_$S(d9BZ#*xGp`0W~VtH4-m=KpC`lC@HabzW!~dxOp{G zle3QoFh7@Kz~8+!kylV$14usZVzjAPUR3nLiog_pci5WXYOv7SsNU?%%s%3zuGSu zDO1vgu*3*`fYOKmuBrTJcwW94I{KjyM;^au$vb&9(&HoD^A)1ZI7Y9Iul5{Sx_Jpy zISn7LCgRZ`>U@nM^h@WPy|HnPu7uO_VqJ2Ma9U`l2gx%E>)`Ob-q=ycY9m=!d{4DMtbtow=0GYTm$L0jiKNTpYs!$*Fumus#fk8aO^ znkZx2T>8APMDSy!zX)hMO6S|sgUL5LQ;`yos}-g7z*GwGc_XM*IstBOepnmt&bJ!@ z>Z7<5l9JWQnE3Uu$O}y;id)0GvMNnfXT8u4<_Tw@Afpx?H2QEM7IKLF_OCtcU%`;E zpU-<3(9QxZuv-U>((^bZ6k?&Z=GC zoj+GG?ps%iTG1gUNFJCVzh0S=G9jzcy2N$xG=Mf)z#tHD?77&b!0Re=~1LA%bg~q zZ_8M|q+8a_MUIxE+_LL=IiJQoG_QKp-biYh7uhHe+4Lj0C|LNgF6U7XGsbpzP1b`3wY@&>0$J$_cl?_1B>U$!`=P-KDE)c()AqSrzBB^ zT(7mX$R0*aj6T;Lw;9+kdhm2v zo|bBSKaalI*6v!at~&|`tQ5-2FO@a(CK~AvGlTSObq{beoAB;3VbA0OUM20>N8)#@uhZWPV_epV^BK#%Wr75ju%f0%B$RQxYtP3t_Lo> z<%X%C6Bd|nj3nh~h+(2$MA_jCxA86Yn^9xx@5#w-1NWipKe!z7DxNbkGRw4maIodI z-CF5d4(B?ikp$8gb?fzJd<^dT5p79Ru^TxFfT%uV?R6d5u*LNAYES-V4UpOkW|qrj zST-{_(Y>EAhR)VT=It;RQd&^w)IZAh^obwkd%3xJx_aV#mv4IOz62+E@a;A=)+21*SY(%ZL@+lg8&#ZfU5F$BVSIO z-9zmu4?w=vUBZ)zJU6w_cK>Q>X>F@|0Roy@9Cm=F7PB;U#)wquX|38YqH_$5YnP4t ztmJ^*Jl%Zl`f`CxwSl7nHX9ti1g~JW7rWehn}s>+3j_{>OHjHBDCBu32x>W0m91@T z6cjcN>@@ccq=&on!^d{BP(E?m0)4U{bmSvqM9#9Qm=BBzir@P3c?GIY{uwtb7C4?)`kHcqv2 zMOx{Pvw9NQWcN_Wlu}jufkBMF$FJ+T4G};@~6}B4L1?2eD)Er zI;w5{y^)$C7mM@WD4^L<6YPA9nVunv&e(H6=WF4U5~f5TP;N+g-Z3QZ1vC&khtAV0 z+_spV=I9l8)g}D_LHb97(|3XNL>c>&(%|7_`oFi@es3DvMvykU3!}9CKjFtZXZ7FU zk|I*|DM zRplqkQ3J+s_2tt})z|tfPw3_Y>90WxOqqK4RHU)O$?sP=Wu{-0$l^n5{6z2PEw`QO zg&zrX3I0k;HgGBq{Y@bNP9SBC(LrR;h-DE~@&if=O80Z1_hLf3bi^p&AP7{3$_5*1 z@y>K7x>X<7hntj@FMirr8aENrQ@_-N&vg?@yd?zF;1628CrdAL39xsHby;$ZN~=4i zX$;B!uN$_J-33@Y4phVsq-jP0iJ3*)87do(N*tu=U*5^Zv|njor;Yzk`|kY2&RcWp zIt$&d{)RSy37s;Ot87B2#KXb8-H1Aj{n<|IC8V+5L>wyIXjS6(=c&&;s%G zPMXk(uGGcBONvDXY$+_3V|-s0p}>$T8sJuh)Mud5Lxe1=Wh8(L)xDh&eV_IwX{l6?Q? z)|#(D_FY7@4qge;blO8MfA$3OzNpqHinJ`@t1(yO)thHbDQzg$_WT^F@z$Za0^rXf z4XgalXkp57LjI@ka#C#-*8(7dQ}-i8G)=({!Z;nEKK+w7pHcvLa|-i+^XBn*XC0zm zB)N%yXICC<1}-HvJdC}!86$rgEiI^o1CmEyhTWj%$miTYE|;f>ukMPjU`Z6>hZK7- zVSIKEjYgd^Y>YqNybf)O$n%0s@oV8F)enaDPRbZv`LW^J_imKikaeWJ9?6^c8d6%& zaX5bv+vA)@_hV+IX%nj&;3X|tzWvS8TeDDX0z@n!BWUg?EUg#@TpaI(E~huZup2Vl zVV3-Yb^X3c{M}mUk%>d0TKBe=HNP{z|6z<^Y5b=#;!EgX1p5Vl@UGB;Yl)I^f>Bf> z7hl}MI7MwPP5i>GGio88#m5XwY^N4{aYhkEk5ksgYn}sEKWErhE&~d!=$&2{pL;pMe{ad%bZ30E%1~tL@(bl910qEN) z&*yKOCE1x0%RnfN&bzWgoieQ$rU2jwZ|%hP?tXiA%<3= zX3Y)4dC82R#b-puZSq|b6d?a!DFQ+Og|@$taOz41!xFi-l8XLYB+dw^)K&$Uo8 z`_*>>@jJIH)cq2|p{F$x?~G!{<)Ec!bc<};XWkOz*6G53vzv|5&2TT0#PF0#f3o-< z_ZF;<`NZRAdm{Cfy6|&N&WY*<(0%yK?O^|(37x;Y3jgAG{(fnv8JV({=DM!^Ftszo z-6l3aod zMY#hs%c@@#)yWkR$M4miXI&R13P#}fZ?e7Rp7|25#rdtQT_uP9w}Isva2E-hRbbTt zd*|p}tDku?@$dganenvu`+l;m*T&HndOQNq`}ll7Cr*r;xolu2Fe9TOc5|Og8GpUX ze-Cw@Ciut6WG8C3=zglXdgLr;lFG4eWv?QAr7p4>(n1erni%+fmGy{AArmOp;)HWT1jgQ)40;w=zx(P{c|QMF_>_y{v@FB|FQp!uj${+caF z0=k{taMkni-Q(Q?)HD6+l~8sk^_|J)U{^4DHN|3Ri`1MlUM|u>0_?Fh@8UyDJX~3X z5|RN{y9I}wG+a!b(+`LVX$SgwPJKhiD3u~vTKnLtAJvHOSCb38o7`y+MnaK1Jt3|Hrtop6z}4pmSlbj#&dJ6u0z zuF-(Kzp7sT49m4^2DdwYC!ip!m~X&9K_QSrdA1~)1bLFxf_!>=e_ZQ^M%qkH=j`G6 zldp}JkDI&QG1sKO;X^RtV{rVgb-;>qV`Ee}{rTkYSDdz5I zKkYcGOVYp#k9nSx`YRD-F3KmTg0I;skw@uHM>B7yAxkhi8`!Qzd=ZbDk1xL(Dejxc z*`m{1PTCiiSfFsvR-#3Uadj?Ebe)~qX@V=lR4*T+5JU2-?

X2F4kYeA_Gf^uY?1_v&q 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 literal 0 HcmV?d00001 diff --git a/notes/后端开发/python/大模型-集装箱号识别.md b/notes/后端开发/python/大模型-集装箱号识别.md deleted file mode 100644 index 8c05ef35..00000000 --- a/notes/后端开发/python/大模型-集装箱号识别.md +++ /dev/null @@ -1,21 +0,0 @@ -## 环境 - -- python:3.11.13 -- paddlepaddle-gpu:3.0.0 -- paddle-ocr:3.0.1 -- cuda:11.8 - - - -## 依赖 - -paddlepaddle-gpu - -```bash -pip install paddlepaddle-gpu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/ -``` - - - -## 运行 - diff --git a/notes/后端开发/python/集装箱号识别.md b/notes/后端开发/python/集装箱号识别.md new file mode 100644 index 00000000..0f23e502 --- /dev/null +++ b/notes/后端开发/python/集装箱号识别.md @@ -0,0 +1,663 @@ +# 识别结果 + +参数基本采用默认参数,都训练 **10轮** 。 + + + + + +## PP-OCRv5_server (极好) + +识别效果:**极好** ,基本都是别出来了,并且正确。 + +![image-20250630141231138](./assets/%E9%9B%86%E8%A3%85%E7%AE%B1%E5%8F%B7%E8%AF%86%E5%88%AB/image-20250630141231138.png) + +### PP-OCRv5_server_det.yml + +```yaml +Global: + model_name: PP-OCRv5_server_det # To use static model for inference. + debug: false + use_gpu: true + epoch_num: &epoch_num 10 + log_smooth_window: 20 + print_batch_step: 10 + save_model_dir: ./output-v5server/PP-OCRv5_server_det + save_epoch_step: 200 + eval_batch_step: + - 0 + - 200 + cal_metric_during_train: false + checkpoints: + pretrained_model: ./pretrain_models/PP-OCRv5_server_det_pretrained.pdparams + save_inference_dir: null + use_visualdl: false + infer_img: doc/imgs_en/img_10.jpg + save_res_path: ./checkpoints/det_db/predicts_db.txt + distributed: false + +Architecture: + model_type: det + algorithm: DB + Transform: null + Backbone: + name: PPHGNetV2_B4 + det: True + Neck: + name: LKPAN + out_channels: 256 + intracl: true + Head: + name: PFHeadLocal + k: 50 + mode: "large" + + +Loss: + name: DBLoss + balance_loss: true + main_loss_type: DiceLoss + alpha: 5 + beta: 10 + ohem_ratio: 3 + +Optimizer: + name: Adam + beta1: 0.9 + beta2: 0.999 + lr: + name: Cosine + learning_rate: 0.001 #(8*8c) + warmup_epoch: 2 + regularizer: + name: L2 + factor: 1e-6 + +PostProcess: + name: DBPostProcess + thresh: 0.3 + box_thresh: 0.6 + max_candidates: 1000 + unclip_ratio: 1.5 + +Metric: + name: DetMetric + main_indicator: hmean + +Train: + dataset: + name: SimpleDataSet + data_dir: ./data/input0/images #图片文件夹路径 + label_file_list: + - ./det_train_label.txt #标签路径 + ratio_list: [1.0] + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - DetLabelEncode: null + - CopyPaste: null + - IaaAugment: + augmenter_args: + - type: Fliplr + args: + p: 0.5 + - type: Affine + args: + rotate: + - -10 + - 10 + - type: Resize + args: + size: + - 0.5 + - 3 + - EastRandomCropData: + size: + - 640 + - 640 + max_tries: 50 + keep_ratio: true + - MakeBorderMap: + shrink_ratio: 0.4 + thresh_min: 0.3 + thresh_max: 0.7 + total_epoch: *epoch_num + - MakeShrinkMap: + shrink_ratio: 0.4 + min_text_size: 8 + total_epoch: *epoch_num + - NormalizeImage: + scale: 1./255. + mean: + - 0.485 + - 0.456 + - 0.406 + std: + - 0.229 + - 0.224 + - 0.225 + order: hwc + - ToCHWImage: null + - KeepKeys: + keep_keys: + - image + - threshold_map + - threshold_mask + - shrink_map + - shrink_mask + loader: + shuffle: true + drop_last: false + batch_size_per_card: 10 + num_workers: 1 + +Eval: + dataset: + name: SimpleDataSet + data_dir: ./data/input0/images + label_file_list: + - ./det_eval_label.txt + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - DetLabelEncode: null + - DetResizeForTest: + - NormalizeImage: + scale: 1./255. + mean: + - 0.485 + - 0.456 + - 0.406 + std: + - 0.229 + - 0.224 + - 0.225 + order: hwc + - ToCHWImage: null + - KeepKeys: + keep_keys: + - image + - shape + - polys + - ignore_tags + loader: + shuffle: false + drop_last: false + batch_size_per_card: 1 + num_workers: 1 +profiler_options: null +``` + +### PP-OCRv5_server_rec.yml + +```yaml +Global: + model_name: PP-OCRv5_server_rec # To use static model for inference. + debug: false + use_gpu: true + epoch_num: 10 + log_smooth_window: 20 + print_batch_step: 10 + save_model_dir: ./output-v5server/PP-OCRv5_server_rec + save_epoch_step: 200 + eval_batch_step: [0, 200] + cal_metric_during_train: true + calc_epoch_interval: 1 + pretrained_model: ./pretrain_models/PP-OCRv5_server_rec_pretrained.pdparams + checkpoints: + save_inference_dir: + use_visualdl: false + infer_img: doc/imgs_words/ch/word_1.jpg + character_dict_path: ./ppocr/utils/dict/ppocrv5_dict.txt + max_text_length: &max_text_length 25 + infer_mode: false + use_space_char: true + distributed: true + save_res_path: ./output-v5server/rec/predicts_ppocrv5.txt + d2s_train_image_shape: [3, 48, 320] + + +Optimizer: + name: Adam + beta1: 0.9 + beta2: 0.999 + lr: + name: Cosine + learning_rate: 0.0005 + warmup_epoch: 1 + regularizer: + name: L2 + factor: 3.0e-05 + + +Architecture: + model_type: rec + algorithm: SVTR_HGNet + Transform: + Backbone: + name: PPHGNetV2_B4 + text_rec: True + Head: + name: MultiHead + head_list: + - CTCHead: + Neck: + name: svtr + dims: 120 + depth: 2 + hidden_dims: 120 + kernel_size: [1, 3] + use_guide: True + Head: + fc_decay: 0.00001 + - NRTRHead: + nrtr_dim: 384 + max_text_length: *max_text_length + +Loss: + name: MultiLoss + loss_config_list: + - CTCLoss: + - NRTRLoss: + +PostProcess: + name: CTCLabelDecode + +Metric: + name: RecMetric + main_indicator: acc + +Train: + dataset: + name: MultiScaleDataSet + ds_width: false + data_dir: ./RecTrainData/ + ext_op_transform_idx: 1 + label_file_list: + - ./rec_train_label.txt + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - RecAug: + - MultiLabelEncode: + gtc_encode: NRTRLabelEncode + - KeepKeys: + keep_keys: + - image + - label_ctc + - label_gtc + - length + - valid_ratio + sampler: + name: MultiScaleSampler + scales: [[320, 32], [320, 48], [320, 64]] + first_bs: &bs 12 + fix_bs: false + divided_factor: [8, 16] # w, h + is_training: True + loader: + shuffle: true + batch_size_per_card: 10 + drop_last: true + num_workers: 1 +Eval: + dataset: + name: SimpleDataSet + data_dir: ./RecEvalData/ + label_file_list: + - ./rec_eval_label.txt + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - MultiLabelEncode: + gtc_encode: NRTRLabelEncode + - RecResizeImg: + image_shape: [3, 48, 320] + - KeepKeys: + keep_keys: + - image + - label_ctc + - label_gtc + - length + - valid_ratio + loader: + shuffle: false + drop_last: false + batch_size_per_card: 1 + num_workers: 1 +``` + + + +## PP-OCRv5_mobile + +### PP-OCRv5_mobile_det.yml + +```yaml +Global: + model_name: PP-OCRv5_mobile_det # To use static model for inference. + debug: false + use_gpu: true + epoch_num: &epoch_num 100 + log_smooth_window: 20 + print_batch_step: 100 + save_model_dir: ./output-v5mobile/PP-OCRv5_mobile_det + save_epoch_step: 200 + eval_batch_step: + - 0 + - 200 + cal_metric_during_train: false + checkpoints: + pretrained_model: https://paddleocr.bj.bcebos.com/pretrained/PPLCNetV3_x0_75_ocr_det.pdparams + save_inference_dir: null + use_visualdl: false + infer_img: doc/imgs_en/img_10.jpg + save_res_path: ./checkpoints/det_db/predicts_db.txt + d2s_train_image_shape: [3, 640, 640] + distributed: true + +Architecture: + model_type: det + algorithm: DB + Transform: null + Backbone: + name: PPLCNetV3 + scale: 0.75 + det: True + Neck: + name: RSEFPN + out_channels: 96 + shortcut: True + Head: + name: DBHead + k: 50 + fix_nan: True + +Loss: + name: DBLoss + balance_loss: true + main_loss_type: DiceLoss + alpha: 5 + beta: 10 + ohem_ratio: 3 + +Optimizer: + name: Adam + beta1: 0.9 + beta2: 0.999 + lr: + name: Cosine + learning_rate: 0.001 #(8*8c) + warmup_epoch: 2 + regularizer: + name: L2 + factor: 5.0e-05 + +PostProcess: + name: DBPostProcess + thresh: 0.3 + box_thresh: 0.6 + max_candidates: 1000 + unclip_ratio: 1.5 + +Metric: + name: DetMetric + main_indicator: hmean + +Train: + dataset: + name: SimpleDataSet + data_dir: ./data/input0/images #图片文件夹路径 + label_file_list: + - ./det_train_label.txt #标签路径 + ratio_list: [1.0] + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - DetLabelEncode: null + - CopyPaste: null + - IaaAugment: + augmenter_args: + - type: Fliplr + args: + p: 0.5 + - type: Affine + args: + rotate: + - -10 + - 10 + - type: Resize + args: + size: + - 0.5 + - 3 + - EastRandomCropData: + size: + - 640 + - 640 + max_tries: 50 + keep_ratio: true + - MakeBorderMap: + shrink_ratio: 0.4 + thresh_min: 0.3 + thresh_max: 0.7 + total_epoch: *epoch_num + - MakeShrinkMap: + shrink_ratio: 0.4 + min_text_size: 8 + total_epoch: *epoch_num + - NormalizeImage: + scale: 1./255. + mean: + - 0.485 + - 0.456 + - 0.406 + std: + - 0.229 + - 0.224 + - 0.225 + order: hwc + - ToCHWImage: null + - KeepKeys: + keep_keys: + - image + - threshold_map + - threshold_mask + - shrink_map + - shrink_mask + loader: + shuffle: true + drop_last: false + batch_size_per_card: 14 + num_workers: 1 + +Eval: + dataset: + name: SimpleDataSet + data_dir: ./data/input0/images + label_file_list: + - ./det_eval_label.txt + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - DetLabelEncode: null + - DetResizeForTest: + - NormalizeImage: + scale: 1./255. + mean: + - 0.485 + - 0.456 + - 0.406 + std: + - 0.229 + - 0.224 + - 0.225 + order: hwc + - ToCHWImage: null + - KeepKeys: + keep_keys: + - image + - shape + - polys + - ignore_tags + loader: + shuffle: false + drop_last: false + batch_size_per_card: 1 + num_workers: 1 +profiler_options: null +``` + + + +### PP-OCRv5_mobile_rec.yml + +```yaml +Global: + model_name: PP-OCRv5_mobile_rec # To use static model for inference. + debug: false + use_gpu: true + epoch_num: 75 + log_smooth_window: 20 + print_batch_step: 10 + save_model_dir: ./output/PP-OCRv5_mobile_rec + save_epoch_step: 10 + eval_batch_step: [0, 2000] + cal_metric_during_train: true + pretrained_model: https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/PP-OCRv5_mobile_rec_pretrained.pdparams + checkpoints: + save_inference_dir: + use_visualdl: false + infer_img: doc/imgs_words/ch/word_1.jpg + character_dict_path: ./ppocr/utils/dict/ppocrv5_dict.txt + max_text_length: &max_text_length 25 + infer_mode: false + use_space_char: true + distributed: true + save_res_path: ./output/rec/predicts_ppocrv5.txt + d2s_train_image_shape: [3, 48, 320] + + +Optimizer: + name: Adam + beta1: 0.9 + beta2: 0.999 + lr: + name: Cosine + learning_rate: 0.0005 + warmup_epoch: 5 + regularizer: + name: L2 + factor: 3.0e-05 + + +Architecture: + model_type: rec + algorithm: SVTR_LCNet + Transform: + Backbone: + name: PPLCNetV3 + scale: 0.95 + Head: + name: MultiHead + head_list: + - CTCHead: + Neck: + name: svtr + dims: 120 + depth: 2 + hidden_dims: 120 + kernel_size: [1, 3] + use_guide: True + Head: + fc_decay: 0.00001 + - NRTRHead: + nrtr_dim: 384 + max_text_length: *max_text_length + +Loss: + name: MultiLoss + loss_config_list: + - CTCLoss: + - NRTRLoss: + +PostProcess: + name: CTCLabelDecode + +Metric: + name: RecMetric + main_indicator: acc + +Train: + dataset: + name: MultiScaleDataSet + ds_width: false + data_dir: ./RecTrainData/ + ext_op_transform_idx: 1 + label_file_list: + - ./rec_train_label.txt + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - RecConAug: + prob: 0.5 + ext_data_num: 2 + image_shape: [48, 320, 3] + max_text_length: *max_text_length + - RecAug: + - MultiLabelEncode: + gtc_encode: NRTRLabelEncode + - KeepKeys: + keep_keys: + - image + - label_ctc + - label_gtc + - length + - valid_ratio + sampler: + name: MultiScaleSampler + scales: [[320, 32], [320, 48], [320, 64]] + first_bs: &bs 128 + fix_bs: false + divided_factor: [8, 16] # w, h + is_training: True + loader: + shuffle: true + batch_size_per_card: 14 + drop_last: true + num_workers: 1 +Eval: + dataset: + name: SimpleDataSet + data_dir: ./RecEvalData/ + label_file_list: + - ./rec_eval_label.txt + transforms: + - DecodeImage: + img_mode: BGR + channel_first: false + - MultiLabelEncode: + gtc_encode: NRTRLabelEncode + - RecResizeImg: + image_shape: [3, 48, 320] + - KeepKeys: + keep_keys: + - image + - label_ctc + - label_gtc + - length + - valid_ratio + loader: + shuffle: false + drop_last: false + batch_size_per_card: 14 + num_workers: 1 +``` +