Skip to content

Commit e8caf23

Browse files
add sample ReadLowQualityBarcodes
1 parent a6fece0 commit e8caf23

File tree

8 files changed

+679
-3
lines changed

8 files changed

+679
-3
lines changed

CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ option(BUILD_CPP_SPEEDFIRSTSETTINGS "Build the sample SpeedFirstSettings under .
1717
option(BUILD_CPP_ACCURACYFIRSTSETTINGS "Build the sample AccuracyFirstSettings under ./sample/C++/Performance/AccuracyFirstSettings" ON)
1818
option(BUILD_CPP_READRATEFIRSTSETTINGS "Build the sample ReadRateFirstSettings under ./sample/C++/Performance/ReadRateFirstSettings" ON)
1919
option(BUILD_CPP_MULTITHREADDECODING "Build the sample MultiThreadDecoding under ./sample/C++/MultiThreadDecoding" ON)
20+
option(BUILD_CPP_READLOWQUALITYBARCODES "Build the sample ReadLowQualityBarcodes under ./sample/C++/UseCases/ReadLowQualityBarcodes" ON)
2021

2122
if(BUILD_LINUX)
2223
set(DBRLIB ${CMAKE_CURRENT_SOURCE_DIR}/lib/Linux/x64)
@@ -68,6 +69,12 @@ if(BUILD_CPP_MULTITHREADDECODING)
6869
add_subdirectory(samples/C++/MultiThreadDecoding)
6970
endif()
7071

72+
if(BUILD_CPP_READLOWQUALITYBARCODES)
73+
add_subdirectory(samples/C++/UseCases/ReadLowQualityBarcodes)
74+
File(COPY samples/C++/UseCases/ReadLowQualityBarcodes/images DESTINATION samples/C++/UseCases/ReadLowQualityBarcodes)
75+
File(COPY samples/C++/UseCases/ReadLowQualityBarcodes/templates DESTINATION samples/C++/UseCases/ReadLowQualityBarcodes)
76+
endif()
77+
7178
if(BUILD_C_HELLOWORLD OR BUILD_C_GENERALSETTINGS OR BUILD_CPP_HELLOWORLD OR BUILD_CPP_GENERALSETTINGS OR BUILD_CPP_SPEEDFIRSTSETTINGS OR BUILD_CPP_ACCURACYFIRSTSETTINGS OR BUILD_CPP_READRATEFIRSTSETTINGS)
7279
File(COPY ./images/AllSupportedBarcodeTypes.png DESTINATION images)
7380
endif()

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ This repository contains multiple samples that demonstrates how to use the <a hr
2525
| ReadRateFirstSettings | This sample demonstrates how to configure Dynamsoft Barcode Reader to read as many barcodes as possible at one time. The downside is that speed and accuracy might be affected. It is recommended to apply these configurations when decoding multiple barcodes from a single image. |
2626
| AccuracyFirstSettings | This sample demonstrates how to configure Dynamsoft Barcode Reader to read barcodes as accurately as possible. The downside is that speed and read-rate might be affected. It is recommended to apply these configurations when misreading is unbearable. |
2727
| MultiThreadDecoding | This sample demonstrates how to read barcodes in multiple threads. |
28-
28+
| ReadLowQualityBarcodes | This sample demonstrates how to use intermediate result to decode low quality barcodes. |
2929

3030
## License
3131

samples/C++/BarcodeReaderSamples.sln

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
Microsoft Visual Studio Solution File, Format Version 12.00
3-
# Visual Studio 15
4-
VisualStudioVersion = 15.0.28307.1169
3+
# Visual Studio Version 16
4+
VisualStudioVersion = 16.0.30717.126
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HelloWorld", "HelloWorld\HelloWorld.vcxproj", "{1B801EDF-8FD8-43FC-9539-7659AF0605C7}"
77
EndProject
@@ -19,6 +19,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReadRateFirstSettings", "Pe
1919
EndProject
2020
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MultiThreadDecoding", "MultiThreadDecoding\MultiThreadDecoding.vcxproj", "{80C79E2F-E407-4652-B92D-2ADCB47B9230}"
2121
EndProject
22+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ReadLowQualityBarcodes", "UseCases\ReadLowQualityBarcodes\ReadLowQualityBarcodes.vcxproj", "{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}"
23+
EndProject
2224
Global
2325
GlobalSection(SolutionConfigurationPlatforms) = preSolution
2426
Debug|x64 = Debug|x64
@@ -90,6 +92,14 @@ Global
9092
{80C79E2F-E407-4652-B92D-2ADCB47B9230}.Release|x64.Build.0 = Release|x64
9193
{80C79E2F-E407-4652-B92D-2ADCB47B9230}.Release|x86.ActiveCfg = Release|Win32
9294
{80C79E2F-E407-4652-B92D-2ADCB47B9230}.Release|x86.Build.0 = Release|Win32
95+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Debug|x64.ActiveCfg = Debug|x64
96+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Debug|x64.Build.0 = Debug|x64
97+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Debug|x86.ActiveCfg = Debug|Win32
98+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Debug|x86.Build.0 = Debug|Win32
99+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Release|x64.ActiveCfg = Release|x64
100+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Release|x64.Build.0 = Release|x64
101+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Release|x86.ActiveCfg = Release|Win32
102+
{D7F8C259-7A8A-467A-A713-9CC2871EB3F2}.Release|x86.Build.0 = Release|Win32
93103
EndGlobalSection
94104
GlobalSection(SolutionProperties) = preSolution
95105
HideSolutionNode = FALSE
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
cmake_minimum_required(VERSION 3.6)
2+
project(ReadLowQualityBarcodes)
3+
4+
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_LIST_DIR)
5+
# set the platform
6+
option(BUILD_LINUX "Build samples for running on Linux x86_64" ON)
7+
option(BUILD_ARM "Build samples for running on Linux ARM32" OFF)
8+
option(BUILD_ARM64 "Build samples for running on Linux ARM64" OFF)
9+
10+
if(BUILD_LINUX)
11+
set(DBRLIB ../../../lib/Linux/x64)
12+
elseif(BUILD_ARM)
13+
set(DBRLIB ../../../lib/Linux/ARM32)
14+
add_compile_options(-DDM_ARM -D__ARM_NEON__ -mfpu=neon)
15+
elseif(BUILD_ARM64)
16+
set(DBRLIB ../../../lib/Linux/ARM64)
17+
add_compile_options(-DDM_ARM -D__ARM_NEON__)
18+
else()
19+
message(FATAL_ERROR "Please specify a supported platform")
20+
endif()
21+
22+
set (CMAKE_CXX_STANDARD 11)
23+
add_compile_options(-O2 -fPIC)
24+
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -O2 -fvisibility=hidden -fvisibility-inlines-hidden -L ${DBRLIB} -Wl,-rpath,${DBRLIB} -Wl,-rpath,'$ORIGIN' -static-libgcc -static-libstdc++ -s")
25+
endif()
26+
27+
file(GLOB FILE_SRCS
28+
ReadLowQualityBarcodes.cpp
29+
)
30+
add_executable(ReadLowQualityBarcodes ${FILE_SRCS})
31+
set_target_properties(ReadLowQualityBarcodes PROPERTIES SKIP_BUILD_RPATH TRUE)
32+
target_link_libraries(ReadLowQualityBarcodes DynamsoftBarcodeReader)
33+

0 commit comments

Comments
 (0)