Browse Source

提交防疫代码

tags/V1.4.0
chenyukun 1 year ago
parent
commit
34a936e6ff
8 changed files with 121 additions and 112 deletions
  1. +31
    -94
      .idea/workspace.xml
  2. +1
    -3
      fk_application.yml
  3. +4
    -3
      service/Dispatcher.py
  4. +0
    -0
      test/baidusdk/__init__.py
  5. +39
    -0
      test/baidusdk/baidusdk.py
  6. +9
    -2
      test/kafka/producer_start.py
  7. +5
    -5
      util/ModelUtils.py
  8. +32
    -5
      util/OcrBaiduSdk.py

+ 31
- 94
.idea/workspace.xml View File

@@ -5,78 +5,12 @@
</component>
<component name="ChangeListManager">
<list default="true" id="4f7dccd9-8f92-4a6e-90cc-33890d102263" name="Changes" comment="Changes">
<change beforePath="$PROJECT_DIR$/.idea/deployment.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/deployment.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/modules.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/sshConfigs.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/sshConfigs.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/webServers.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/webServers.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/common/Constant.py" beforeDir="false" afterPath="$PROJECT_DIR$/common/Constant.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/concurrency/CommonProcess.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/concurrency/CommonThread.py" beforeDir="false" afterPath="$PROJECT_DIR$/concurrency/CommonThread.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/concurrency/FileUpdateThread.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/concurrency/HeartbeatThread.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/concurrency/IntelligentRecognitionProcess.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/concurrency/MessagePollingThread.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/config/ModelConfig.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/dsp_application.yml" beforeDir="false" afterPath="$PROJECT_DIR$/fk_application.yml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/dsp_master.py" beforeDir="false" afterPath="$PROJECT_DIR$/fk_master.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/entity/FeedBack.py" beforeDir="false" afterPath="$PROJECT_DIR$/entity/FeedBack.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enums/AnalysisStatusEnum.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/enums/AnalysisTypeEnum.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/enums/ExceptionEnum.py" beforeDir="false" afterPath="$PROJECT_DIR$/enums/ExceptionEnum.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enums/ModelTypeEnum.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/fk_application.yml" beforeDir="false" afterPath="$PROJECT_DIR$/fk_application.yml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/service/Dispatcher.py" beforeDir="false" afterPath="$PROJECT_DIR$/service/Dispatcher.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/Producer2.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/__init__.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/cv2test.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/cv2test1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/experimental.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/ffmpeg11/__init__.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/ffmpeg11/ffmpeg11.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/ffmpeg11/ffmpeg33.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/ffmpeg2.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/ffmpeg3.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/gputest.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/gputest1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/1.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/2.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI1.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI2.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI3.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI4.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI5.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI6.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI7.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/image/AI8.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/mysqltest.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/producer_start.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/producer_stop.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/read.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/same1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/same2.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/same3.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/test1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/torch_utils.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/vod.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/vodTest.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/vodtest1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/vodtest2.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/ORB算法.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/__init__.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/互信息.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/余弦相似度计算.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/视频添加图片水印1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/视频添加文字水印.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/视频添加文字水印1.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/视频添加文字水印2.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/test/水印/视频添加文字水印3.py" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/tuoheng_alg.iml" beforeDir="false" afterPath="$PROJECT_DIR$/tuoheng_fk.iml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/util/ImageUtils.py" beforeDir="false" afterPath="$PROJECT_DIR$/util/ImageUtils.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/util/KafkaUtils.py" beforeDir="false" afterPath="$PROJECT_DIR$/util/KafkaUtils.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/test/kafka/producer_start.py" beforeDir="false" afterPath="$PROJECT_DIR$/test/kafka/producer_start.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/util/ModelUtils.py" beforeDir="false" afterPath="$PROJECT_DIR$/util/ModelUtils.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/util/OcrBaiduSdk.py" beforeDir="false" afterPath="$PROJECT_DIR$/util/OcrBaiduSdk.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -206,7 +140,7 @@
<property name="WebServerToolWindowPanel.toolwindow.show.date" value="false" />
<property name="WebServerToolWindowPanel.toolwindow.show.permissions" value="false" />
<property name="WebServerToolWindowPanel.toolwindow.show.size" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/test/kafka" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/../model/healthCode" />
<property name="node.js.detected.package.eslint" value="true" />
<property name="node.js.detected.package.tslint" value="true" />
<property name="node.js.selected.package.eslint" value="(autodetect)" />
@@ -229,7 +163,7 @@
<recent name="D:\work\alg\tuoheng_alg\image" />
</key>
</component>
<component name="RunManager" selected="Python.producer_start">
<component name="RunManager" selected="Python.baidusdk">
<configuration name="Dispatcher" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="tuoheng_fk" />
<option name="INTERPRETER_OPTIONS" value="" />
@@ -252,7 +186,7 @@
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<configuration name="fk_master" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<configuration name="baidusdk" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="tuoheng_fk" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
@@ -260,12 +194,12 @@
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="sftp://dell@192.168.10.12:22/home/dell/anaconda3/envs/prod/bin/python3.8" />
<option name="WORKING_DIRECTORY" value="/home/chenyukun/fk" />
<option name="WORKING_DIRECTORY" value="/home/chenyukun/fk/test/baidusdk" />
<option name="IS_MODULE_SDK" value="false" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="/home/chenyukun/fk/fk_master.py" />
<option name="SCRIPT_NAME" value="/home/chenyukun/fk/test/baidusdk/baidusdk.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
@@ -274,20 +208,20 @@
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<configuration name="image" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<configuration name="fk_master" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="tuoheng_fk" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/test/协程" />
<option name="IS_MODULE_SDK" value="true" />
<option name="SDK_HOME" value="sftp://dell@192.168.10.12:22/home/dell/anaconda3/envs/prod/bin/python3.8" />
<option name="WORKING_DIRECTORY" value="/home/chenyukun/fk" />
<option name="IS_MODULE_SDK" value="false" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/test/协程/image.py" />
<option name="SCRIPT_NAME" value="/home/chenyukun/fk/fk_master.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
@@ -296,20 +230,20 @@
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<configuration name="minio" type="PythonConfigurationType" factoryName="Python" temporary="true">
<module name="tuoheng_alg" />
<configuration name="image" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="tuoheng_fk" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="$PROJECT_DIR$/../../../software/anaconda/envs/test/python.exe" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/test/minio1" />
<option name="IS_MODULE_SDK" value="false" />
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/test/协程" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/test/minio1/minio_test.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/test/协程/image.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
@@ -364,19 +298,19 @@
</configuration>
<list>
<item itemvalue="Python.mysqltest" />
<item itemvalue="Python.minio" />
<item itemvalue="Python.image" />
<item itemvalue="Python.fk_master" />
<item itemvalue="Python.producer_start" />
<item itemvalue="Python.Dispatcher" />
<item itemvalue="Python.baidusdk" />
</list>
<recent_temporary>
<list>
<item itemvalue="Python.baidusdk" />
<item itemvalue="Python.producer_start" />
<item itemvalue="Python.fk_master" />
<item itemvalue="Python.Dispatcher" />
<item itemvalue="Python.image" />
<item itemvalue="Python.minio" />
</list>
</recent_temporary>
</component>
@@ -429,6 +363,7 @@
<workItem from="1667465195109" duration="2193000" />
<workItem from="1667520341261" duration="742000" />
<workItem from="1667524924941" duration="63471000" />
<workItem from="1667887464732" duration="8875000" />
</task>
<servers />
</component>
@@ -452,27 +387,29 @@
<select />
</component>
<component name="com.intellij.coverage.CoverageDataManagerImpl">
<SUITE FILE_PATH="coverage/tuoheng_alg$KafkaUtils__1_.coverage" NAME="KafkaUtils (1) Coverage Results" MODIFIED="1663464961001" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/util" />
<SUITE FILE_PATH="coverage/tuoheng_alg$mysqltest.coverage" NAME="mysqltest Coverage Results" MODIFIED="1660868712851" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$asnyc.coverage" NAME="asnyc Coverage Results" MODIFIED="1663459033435" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$minio.coverage" NAME="minio 覆盖结果" MODIFIED="1667465702864" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test/minio1" />
<SUITE FILE_PATH="coverage/tuoheng_alg$.coverage" NAME="视频添加图片水印 Coverage Results" MODIFIED="1661873949526" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$1.coverage" NAME="视频添加文字水印1 Coverage Results" MODIFIED="1663381948693" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$asnyc__1_.coverage" NAME="asnyc (1) Coverage Results" MODIFIED="1663458917599" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$producer_start.coverage" NAME="producer_start Coverage Results" MODIFIED="1663466832843" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$dsp_master.coverage" NAME="dsp_master Coverage Results" MODIFIED="1663403978477" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
<SUITE FILE_PATH="coverage/tuoheng_alg$5.coverage" NAME="视频添加图片水印5 Coverage Results" MODIFIED="1661905982885" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$KafkaUtils.coverage" NAME="KafkaUtils Coverage Results" MODIFIED="1663465345491" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/util" />
<SUITE FILE_PATH="coverage/tuoheng_alg$read.coverage" NAME="read Coverage Results" MODIFIED="1663640070956" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$aa1.coverage" NAME="aa1 覆盖结果" MODIFIED="1667351136888" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test/ffmpeg11" />
<SUITE FILE_PATH="coverage/tuoheng_alg$ffmpeg22.coverage" NAME="aa 覆盖结果" MODIFIED="1667350492259" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="/opt/tuo_heng" />
<SUITE FILE_PATH="coverage/tuoheng_fk$fk_master.coverage" NAME="fk_master 覆盖结果" MODIFIED="1667811327080" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="/home/chenyukun/fk" />
<SUITE FILE_PATH="coverage/tuoheng_alg$ImageUtils.coverage" NAME="ImageUtils Coverage Results" MODIFIED="1663499421253" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/util" />
<SUITE FILE_PATH="coverage/tuoheng_alg$2.coverage" NAME="视频添加图片水印2 Coverage Results" MODIFIED="1661875306428" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_fk$producer_start.coverage" NAME="producer_start 覆盖结果" MODIFIED="1667811329568" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test/kafka" />
<SUITE FILE_PATH="coverage/tuoheng_alg$4.coverage" NAME="视频添加图片水印4 Coverage Results" MODIFIED="1661874731395" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_fk_python$producer_start.coverage" NAME="producer_start 覆盖结果" MODIFIED="1667895565003" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test/kafka" />
<SUITE FILE_PATH="coverage/tuoheng_alg$KafkaUtils__1_.coverage" NAME="KafkaUtils (1) Coverage Results" MODIFIED="1663464961001" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/util" />
<SUITE FILE_PATH="coverage/tuoheng_alg$minio.coverage" NAME="minio 覆盖结果" MODIFIED="1667465702864" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test/minio1" />
<SUITE FILE_PATH="coverage/tuoheng_alg$producer_start.coverage" NAME="producer_start Coverage Results" MODIFIED="1663466832843" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$dsp_master.coverage" NAME="dsp_master Coverage Results" MODIFIED="1663403978477" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
<SUITE FILE_PATH="coverage/tuoheng_alg$read.coverage" NAME="read Coverage Results" MODIFIED="1663640070956" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
<SUITE FILE_PATH="coverage/tuoheng_alg$ffmpeg22.coverage" NAME="aa 覆盖结果" MODIFIED="1667350492259" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="/opt/tuo_heng" />
<SUITE FILE_PATH="coverage/tuoheng_alg$ImageUtils.coverage" NAME="ImageUtils Coverage Results" MODIFIED="1663499421253" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/util" />
<SUITE FILE_PATH="coverage/tuoheng_fk$image.coverage" NAME="image 覆盖结果" MODIFIED="1667547816366" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test/协程" />
<SUITE FILE_PATH="coverage/tuoheng_alg$TimeUtils.coverage" NAME="TimeUtils Coverage Results" MODIFIED="1661222768678" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/util" />
<SUITE FILE_PATH="coverage/tuoheng_fk_python$baidusdk.coverage" NAME="baidusdk 覆盖结果" MODIFIED="1667895786971" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="/home/chenyukun/fk/test/baidusdk" />
<SUITE FILE_PATH="coverage/tuoheng_fk$Dispatcher.coverage" NAME="Dispatcher 覆盖结果" MODIFIED="1667810228478" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/service" />
<SUITE FILE_PATH="coverage/tuoheng_alg$3.coverage" NAME="视频添加文字水印3 Coverage Results" MODIFIED="1661906152928" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/test" />
</component>

+ 1
- 3
fk_application.yml View File

@@ -102,9 +102,7 @@ baiduocr:
APP_ID: 28173504
API_KEY: kqrFE7VuygIaFer7z6cRxzoi
SECRET_KEY: yp7xBokyl4TItyGhay7skAN1cMwfvEXf
clientId: 4MHwsmjWR1E3POLPQlVxtWK3
clientSecret: 86i865EgBOTG5OtWssAo1zOUc6A7DZAj
path: https://aip.baidubce.com/rest/2.0/ocr/v1/license_plate

#mysql:
# # 数据库信息
# dev:

+ 4
- 3
service/Dispatcher.py View File

@@ -29,7 +29,7 @@ def distinguish(flowMan, fkmodel, gpuId, orc, msgId):
for flowManUrl in flowManUrlList:
args_list.append(('code', flowManUrl, gpuId, fkmodel, orc, msgId))
register = message_register(registerId=registerId, carUrl=carUrl, carCode="", flowManRecognitionlList=[])
with ThreadPoolExecutor(max_workers=3) as t:
with ThreadPoolExecutor(max_workers=2) as t:
for result in t.map(ai_segmentation_recognition, args_list):
if result is not None:
if result.get("type") == '2':
@@ -214,17 +214,18 @@ class DispatcherService():
erroCode=ExceptionType.SUCCESS.value[0],
erroMsg=ExceptionType.SUCCESS.value[1],
registerRecognitionMsg=[])
with ThreadPoolExecutor(max_workers=3) as t:
with ThreadPoolExecutor(max_workers=2) as t:
for flowMan in registerMsg:
obj = t.submit(distinguish, flowMan, fkmodel, gpu_ids[0], orc, msgId)
obj_list.append(obj)
for future in as_completed(obj_list):
data = future.result()
if data is None:
return message_feedback(msgId,
response = message_feedback(msgId,
erroCode=ExceptionType.SERVICE_INNER_EXCEPTION.value[0],
erroMsg=ExceptionType.SERVICE_INNER_EXCEPTION.value[1],
registerRecognitionMsg=[])
break
else:
response["registerRecognitionMsg"].append(data)
self.fbQueue.put(response)

+ 0
- 0
test/baidusdk/__init__.py View File


+ 39
- 0
test/baidusdk/baidusdk.py View File

@@ -0,0 +1,39 @@
from concurrent.futures import ThreadPoolExecutor

import cv2
import yaml
from aip import AipOcr

from common import Constant
from util import YmlUtils
from util.OcrBaiduSdk import OcrBaiduSdk

client = AipOcr(str(28173504), 'kqrFE7VuygIaFer7z6cRxzoi',
'yp7xBokyl4TItyGhay7skAN1cMwfvEXf')
im0 = cv2.imread('/home/chenyukun/healthCode/jitimg/zc0vlz87kv_1667879673871_cityImage.jpg')

# or_result, or_image = cv2.imencode(".jpg", im0)
with open("/home/chenyukun/fk/fk_application.yml", 'r', encoding=Constant.UTF_8) as f:
file_content = f.read()
content = yaml.load(file_content, yaml.FullLoader)
if not content:
raise Exception("配置项不能为空:{}".format(Constant.APPLICATION_CONFIG))
print("读取配置文件完成!")
orc = OcrBaiduSdk(content)

def aa(a):
res_image = orc.universal_text_recognition(im0,'aaaaaaaa')
# res_image = orc.license_plate_recognition(im0,'aa')
print(res_image)
# print(res_image1)
with ThreadPoolExecutor(max_workers=100) as t:
t.map(aa, range(1))







# or_result, or_image = cv2.imencode(".jpg", image)
# res_image = self.client.licensePlate(or_image.tobytes())

+ 9
- 2
test/kafka/producer_start.py View File

@@ -45,8 +45,15 @@ import threading
# on_send_success, "sdasd", "1111").add_errback(on_send_error)
# result = future.get(timeout=10)
# print(result)
aaa = {
"erroMsg": "系统内部异常, 请联系工程师定位处理!",
"registerRecognitionMsg": [],
"erroCode": "SP999",
"msgId": "ffa29db9c4c7451997b3d5038bf13381"
}
# topicName = 'fk-alg-tasks'
topicName = 'fk-alg-results'

topicName = 'fk-alg-tasks'
aa = {
"msgId": "1312313213",
"registerMsg": [
@@ -62,6 +69,6 @@ aa = {
}
producer = KafkaProducer(bootstrap_servers=['192.168.11.13:9092'],
value_serializer=lambda m: json.dumps(m).encode('utf-8'))
future = producer.send(topicName, key=b'1312313213', value=aa)
future = producer.send(topicName, key=b'ffa29db9c4c7451997b3d5038bf13381', value=aaa)
result = future.get(timeout=10)
print(result)

+ 5
- 5
util/ModelUtils.py View File

@@ -13,10 +13,12 @@ class Model():
self.par = {'code': {'weights': '../healthCode/weights/health_yolov5s_v2.jit', 'img_type': 'code', 'nc': 9},
'plate': {'weights': '../healthCode/weights/plate_yolov5s.jit', 'img_type': 'plate', 'nc': 1},
'conf_thres': 0.4,
'iou_thres': 0.45
'iou_thres': 0.45,
'device': 'cuda:0',
'plate_dilate': (0.5, 0.3)
}
###加载模型
self.device = torch.device('cuda:0')
self.device = torch.device(self.par['device'])
self.model = torch.jit.load(self.par['code']['weights'])
self.model_plate = torch.jit.load(self.par['plate']['weights'])

@@ -28,7 +30,6 @@ class FKModel(Model):

# names, label_arraylist, rainbows, conf_thres, iou_thres
def process(self, im0, device, img_type):
print("bbbbbbbbbbbbbbbbnbbb", im0, device, img_type)
# 预处理
img, padInfos = pre_process(im0, device)
# 模型推理 code, plate
@@ -38,8 +39,7 @@ class FKModel(Model):
pred = self.model_plate(img)
boxes = post_process(pred, padInfos, device, conf_thres=self.par['conf_thres'], iou_thres=self.par['iou_thres'],
nc=self.par[img_type]['nc']) # 后处理
dataBack = get_return_data(im0, boxes, modelType=img_type)
print("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", dataBack)
dataBack = get_return_data(im0, boxes, modelType=img_type, plate_dilate=self.par['plate_dilate'])
return dataBack
# for key in dataBack.keys():
# if isinstance(dataBack[key], list):

+ 32
- 5
util/OcrBaiduSdk.py View File

@@ -1,4 +1,5 @@
import time
from threading import Lock

import cv2
from aip import AipOcr
@@ -13,6 +14,7 @@ class OcrBaiduSdk:
def __init__(self, content):
self.content = content
self.init_client()
# self.lock = Lock()

def init_client(self):
self.client = AipOcr(str(self.content["baiduocr"]["APP_ID"]), self.content["baiduocr"]["API_KEY"],
@@ -30,22 +32,35 @@ class OcrBaiduSdk:
}
'''
def universal_text_recognition(self, image, msgId):
# try:
# self.lock.acquire()
reply_num = 1
while True:
try:
or_result, or_image = cv2.imencode(".jpg", image)
res_image = self.client.basicGeneral(or_image.tobytes())
if res_image.get("error_code") == 282403 or res_image.get("error_msg") == 'target recognize error':
logger.error("百度云调接口失败: {}, 当前重试次数:{}, msgId: {}", res_image, reply_num, msgId)
return None
if res_image.get("error_code") is not None:
logger.error("百度云调接口失败: {}, 当前重试次数:{}, msgId: {}", res_image, reply_num, msgId)
raise Exception("百度云调接口失败")
return res_image
except Exception as e:
logger.exception("通用文字识别失败: {}, 当前重试次数:{}, msgId: {}", e, reply_num, msgId)
time.sleep(1)
reply_num += 1
self.init_client()
if reply_num > 3:
if reply_num > 5:
logger.exception("通用文字识别失败: {}, msgId: {}", e, msgId)
raise ServiceException(ExceptionType.UNIVERSAL_TEXT_RECOGNITION_FAILED.value[0],
ExceptionType.UNIVERSAL_TEXT_RECOGNITION_FAILED.value[1])

# except Exception as ee:
# logger.exception("通用文字识别加锁异常: {}, msgId: {}", ee, msgId)
# raise ServiceException(ExceptionType.UNIVERSAL_TEXT_RECOGNITION_FAILED.value[0],
# ExceptionType.UNIVERSAL_TEXT_RECOGNITION_FAILED.value[1])
# finally:
# self.lock.release()
'''
{
"log_id": 3583925545,
@@ -56,22 +71,34 @@ class OcrBaiduSdk:
}
'''
def license_plate_recognition(self, image, msgId):
# try:
# self.lock.acquire()
reply_num = 1
while True:
try:
or_result, or_image = cv2.imencode(".jpg", image)
res_image = self.client.licensePlate(or_image.tobytes())
if res_image.get("error_code") == 282403 or res_image.get("error_msg") == 'target recognize error':
logger.error("百度云调接口失败: {}, 当前重试次数:{}, msgId: {}", res_image, reply_num, msgId)
return None
if res_image.get("error_code") is not None:
logger.error("百度云调接口失败: {}, 当前重试次数:{}, msgId: {}", res_image, reply_num, msgId)
raise Exception("百度云调接口失败")
return res_image
except Exception as e:
logger.exception("车牌识别失败: {}, 当前重试次数:{}, msgId: {}", e, reply_num, msgId)
time.sleep(1)
reply_num += 1
self.init_client()
if reply_num > 3:
if reply_num > 5:
logger.exception("车牌识别失败: {}, msgId: {}", e, msgId)
raise ServiceException(ExceptionType.ABNORMAL_LICENSE_PLATE_RECOGNITION.value[0],
ExceptionType.ABNORMAL_LICENSE_PLATE_RECOGNITION.value[1])


# except Exception as ee:
# logger.exception("车牌识别加锁异常: {}, msgId: {}", ee, msgId)
# raise ServiceException(ExceptionType.ABNORMAL_LICENSE_PLATE_RECOGNITION.value[0],
# ExceptionType.ABNORMAL_LICENSE_PLATE_RECOGNITION.value[1])
# finally:
# self.lock.release()



Loading…
Cancel
Save