实例介绍
android端,基于openCV与深度学习,实现快速准确的车牌识别。平均识别耗时350ms左右,采集100样本识别准确率达到95%。识别过程:1、使用openCV确定车牌左右、上下区域;2、车牌倾斜判断与校正;3、滑动切割字符;4、深度学习对每个字符进行识别
【实例截图】
【核心代码】
LicenseRecognition(1)
└── LicenseRecognition
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── import-summary.txt
├── license
│ ├── build.gradle
│ ├── CMakeLists.txt
│ ├── license.iml
│ ├── proguard-rules.pro
│ └── src
│ ├── androidTest
│ │ └── java
│ │ └── com
│ │ └── frank
│ │ └── plate
│ │ └── ExampleInstrumentedTest.java
│ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── assets
│ │ │ └── pr
│ │ │ ├── cascade.xml
│ │ │ ├── CharacterRecognization.caffemodel
│ │ │ ├── CharacterRecognization.prototxt
│ │ │ ├── HorizonalFinemapping.caffemodel
│ │ │ ├── HorizonalFinemapping.prototxt
│ │ │ ├── Segmentation.caffemodel
│ │ │ └── Segmentation.prototxt
│ │ ├── cpp
│ │ │ ├── CMakeLists.txt
│ │ │ ├── include
│ │ │ │ ├── CNNRecognizer.h
│ │ │ │ ├── FastDeskew.h
│ │ │ │ ├── FineMapping.h
│ │ │ │ ├── niBlackThreshold.h
│ │ │ │ ├── opencv2
│ │ │ │ │ ├── calib3d
│ │ │ │ │ │ ├── calib3d_c.h
│ │ │ │ │ │ └── calib3d.hpp
│ │ │ │ │ ├── calib3d.hpp
│ │ │ │ │ ├── core
│ │ │ │ │ │ ├── affine.hpp
│ │ │ │ │ │ ├── base.hpp
│ │ │ │ │ │ ├── bufferpool.hpp
│ │ │ │ │ │ ├── core_c.h
│ │ │ │ │ │ ├── core.hpp
│ │ │ │ │ │ ├── cuda
│ │ │ │ │ │ │ ├── block.hpp
│ │ │ │ │ │ │ ├── border_interpolate.hpp
│ │ │ │ │ │ │ ├── color.hpp
│ │ │ │ │ │ │ ├── common.hpp
│ │ │ │ │ │ │ ├── datamov_utils.hpp
│ │ │ │ │ │ │ ├── detail
│ │ │ │ │ │ │ │ ├── color_detail.hpp
│ │ │ │ │ │ │ │ ├── reduce.hpp
│ │ │ │ │ │ │ │ ├── reduce_key_val.hpp
│ │ │ │ │ │ │ │ ├── transform_detail.hpp
│ │ │ │ │ │ │ │ ├── type_traits_detail.hpp
│ │ │ │ │ │ │ │ └── vec_distance_detail.hpp
│ │ │ │ │ │ │ ├── dynamic_smem.hpp
│ │ │ │ │ │ │ ├── emulation.hpp
│ │ │ │ │ │ │ ├── filters.hpp
│ │ │ │ │ │ │ ├── funcattrib.hpp
│ │ │ │ │ │ │ ├── functional.hpp
│ │ │ │ │ │ │ ├── limits.hpp
│ │ │ │ │ │ │ ├── reduce.hpp
│ │ │ │ │ │ │ ├── saturate_cast.hpp
│ │ │ │ │ │ │ ├── scan.hpp
│ │ │ │ │ │ │ ├── simd_functions.hpp
│ │ │ │ │ │ │ ├── transform.hpp
│ │ │ │ │ │ │ ├── type_traits.hpp
│ │ │ │ │ │ │ ├── utility.hpp
│ │ │ │ │ │ │ ├── vec_distance.hpp
│ │ │ │ │ │ │ ├── vec_math.hpp
│ │ │ │ │ │ │ ├── vec_traits.hpp
│ │ │ │ │ │ │ ├── warp.hpp
│ │ │ │ │ │ │ ├── warp_reduce.hpp
│ │ │ │ │ │ │ └── warp_shuffle.hpp
│ │ │ │ │ │ ├── cuda.hpp
│ │ │ │ │ │ ├── cuda.inl.hpp
│ │ │ │ │ │ ├── cuda_stream_accessor.hpp
│ │ │ │ │ │ ├── cuda_types.hpp
│ │ │ │ │ │ ├── cv_cpu_dispatch.h
│ │ │ │ │ │ ├── cv_cpu_helper.h
│ │ │ │ │ │ ├── cvdef.h
│ │ │ │ │ │ ├── cvstd.hpp
│ │ │ │ │ │ ├── cvstd.inl.hpp
│ │ │ │ │ │ ├── directx.hpp
│ │ │ │ │ │ ├── eigen.hpp
│ │ │ │ │ │ ├── fast_math.hpp
│ │ │ │ │ │ ├── hal
│ │ │ │ │ │ │ ├── hal.hpp
│ │ │ │ │ │ │ ├── interface.h
│ │ │ │ │ │ │ ├── intrin_cpp.hpp
│ │ │ │ │ │ │ ├── intrin.hpp
│ │ │ │ │ │ │ ├── intrin_neon.hpp
│ │ │ │ │ │ │ └── intrin_sse.hpp
│ │ │ │ │ │ ├── ippasync.hpp
│ │ │ │ │ │ ├── mat.hpp
│ │ │ │ │ │ ├── mat.inl.hpp
│ │ │ │ │ │ ├── matx.hpp
│ │ │ │ │ │ ├── neon_utils.hpp
│ │ │ │ │ │ ├── ocl_genbase.hpp
│ │ │ │ │ │ ├── ocl.hpp
│ │ │ │ │ │ ├── opengl.hpp
│ │ │ │ │ │ ├── operations.hpp
│ │ │ │ │ │ ├── optim.hpp
│ │ │ │ │ │ ├── ovx.hpp
│ │ │ │ │ │ ├── persistence.hpp
│ │ │ │ │ │ ├── private.cuda.hpp
│ │ │ │ │ │ ├── private.hpp
│ │ │ │ │ │ ├── ptr.inl.hpp
│ │ │ │ │ │ ├── saturate.hpp
│ │ │ │ │ │ ├── softfloat.hpp
│ │ │ │ │ │ ├── sse_utils.hpp
│ │ │ │ │ │ ├── traits.hpp
│ │ │ │ │ │ ├── types_c.h
│ │ │ │ │ │ ├── types.hpp
│ │ │ │ │ │ ├── utility.hpp
│ │ │ │ │ │ ├── utils
│ │ │ │ │ │ │ ├── logger.hpp
│ │ │ │ │ │ │ └── trace.hpp
│ │ │ │ │ │ ├── va_intel.hpp
│ │ │ │ │ │ ├── version.hpp
│ │ │ │ │ │ └── wimage.hpp
│ │ │ │ │ ├── core.hpp
│ │ │ │ │ ├── cvconfig.h
│ │ │ │ │ ├── dnn
│ │ │ │ │ │ ├── all_layers.hpp
│ │ │ │ │ │ ├── dict.hpp
│ │ │ │ │ │ ├── dnn.hpp
│ │ │ │ │ │ ├── dnn.inl.hpp
│ │ │ │ │ │ ├── layer.details.hpp
│ │ │ │ │ │ ├── layer.hpp
│ │ │ │ │ │ └── shape_utils.hpp
│ │ │ │ │ ├── dnn.hpp
│ │ │ │ │ ├── features2d
│ │ │ │ │ │ └── features2d.hpp
│ │ │ │ │ ├── features2d.hpp
│ │ │ │ │ ├── flann
│ │ │ │ │ │ ├── all_indices.h
│ │ │ │ │ │ ├── allocator.h
│ │ │ │ │ │ ├── any.h
│ │ │ │ │ │ ├── autotuned_index.h
│ │ │ │ │ │ ├── composite_index.h
│ │ │ │ │ │ ├── config.h
│ │ │ │ │ │ ├── defines.h
│ │ │ │ │ │ ├── dist.h
│ │ │ │ │ │ ├── dummy.h
│ │ │ │ │ │ ├── dynamic_bitset.h
│ │ │ │ │ │ ├── flann_base.hpp
│ │ │ │ │ │ ├── flann.hpp
│ │ │ │ │ │ ├── general.h
│ │ │ │ │ │ ├── ground_truth.h
│ │ │ │ │ │ ├── hdf5.h
│ │ │ │ │ │ ├── heap.h
│ │ │ │ │ │ ├── hierarchical_clustering_index.h
│ │ │ │ │ │ ├── index_testing.h
│ │ │ │ │ │ ├── kdtree_index.h
│ │ │ │ │ │ ├── kdtree_single_index.h
│ │ │ │ │ │ ├── kmeans_index.h
│ │ │ │ │ │ ├── linear_index.h
│ │ │ │ │ │ ├── logger.h
│ │ │ │ │ │ ├── lsh_index.h
│ │ │ │ │ │ ├── lsh_table.h
│ │ │ │ │ │ ├── matrix.h
│ │ │ │ │ │ ├── miniflann.hpp
│ │ │ │ │ │ ├── nn_index.h
│ │ │ │ │ │ ├── object_factory.h
│ │ │ │ │ │ ├── params.h
│ │ │ │ │ │ ├── random.h
│ │ │ │ │ │ ├── result_set.h
│ │ │ │ │ │ ├── sampling.h
│ │ │ │ │ │ ├── saving.h
│ │ │ │ │ │ ├── simplex_downhill.h
│ │ │ │ │ │ └── timer.h
│ │ │ │ │ ├── flann.hpp
│ │ │ │ │ ├── highgui
│ │ │ │ │ │ ├── highgui_c.h
│ │ │ │ │ │ └── highgui.hpp
│ │ │ │ │ ├── highgui.hpp
│ │ │ │ │ ├── imgcodecs
│ │ │ │ │ │ ├── imgcodecs_c.h
│ │ │ │ │ │ ├── imgcodecs.hpp
│ │ │ │ │ │ └── ios.h
│ │ │ │ │ ├── imgcodecs.hpp
│ │ │ │ │ ├── imgproc
│ │ │ │ │ │ ├── detail
│ │ │ │ │ │ │ └── distortion_model.hpp
│ │ │ │ │ │ ├── hal
│ │ │ │ │ │ │ ├── hal.hpp
│ │ │ │ │ │ │ └── interface.h
│ │ │ │ │ │ ├── imgproc_c.h
│ │ │ │ │ │ ├── imgproc.hpp
│ │ │ │ │ │ └── types_c.h
│ │ │ │ │ ├── imgproc.hpp
│ │ │ │ │ ├── ml
│ │ │ │ │ │ └── ml.hpp
│ │ │ │ │ ├── ml.hpp
│ │ │ │ │ ├── objdetect
│ │ │ │ │ │ ├── detection_based_tracker.hpp
│ │ │ │ │ │ ├── objdetect_c.h
│ │ │ │ │ │ └── objdetect.hpp
│ │ │ │ │ ├── objdetect.hpp
│ │ │ │ │ ├── opencv.hpp
│ │ │ │ │ ├── opencv_modules.hpp
│ │ │ │ │ ├── photo
│ │ │ │ │ │ ├── cuda.hpp
│ │ │ │ │ │ ├── photo_c.h
│ │ │ │ │ │ └── photo.hpp
│ │ │ │ │ ├── photo.hpp
│ │ │ │ │ ├── shape
│ │ │ │ │ │ ├── emdL1.hpp
│ │ │ │ │ │ ├── hist_cost.hpp
│ │ │ │ │ │ ├── shape_distance.hpp
│ │ │ │ │ │ ├── shape.hpp
│ │ │ │ │ │ └── shape_transformer.hpp
│ │ │ │ │ ├── shape.hpp
│ │ │ │ │ ├── stitching
│ │ │ │ │ │ ├── detail
│ │ │ │ │ │ │ ├── autocalib.hpp
│ │ │ │ │ │ │ ├── blenders.hpp
│ │ │ │ │ │ │ ├── camera.hpp
│ │ │ │ │ │ │ ├── exposure_compensate.hpp
│ │ │ │ │ │ │ ├── matchers.hpp
│ │ │ │ │ │ │ ├── motion_estimators.hpp
│ │ │ │ │ │ │ ├── seam_finders.hpp
│ │ │ │ │ │ │ ├── timelapsers.hpp
│ │ │ │ │ │ │ ├── util.hpp
│ │ │ │ │ │ │ ├── util_inl.hpp
│ │ │ │ │ │ │ ├── warpers.hpp
│ │ │ │ │ │ │ └── warpers_inl.hpp
│ │ │ │ │ │ └── warpers.hpp
│ │ │ │ │ ├── stitching.hpp
│ │ │ │ │ ├── superres
│ │ │ │ │ │ └── optical_flow.hpp
│ │ │ │ │ ├── superres.hpp
│ │ │ │ │ ├── video
│ │ │ │ │ │ ├── background_segm.hpp
│ │ │ │ │ │ ├── tracking_c.h
│ │ │ │ │ │ ├── tracking.hpp
│ │ │ │ │ │ └── video.hpp
│ │ │ │ │ ├── video.hpp
│ │ │ │ │ ├── videoio
│ │ │ │ │ │ ├── cap_ios.h
│ │ │ │ │ │ ├── videoio_c.h
│ │ │ │ │ │ └── videoio.hpp
│ │ │ │ │ ├── videoio.hpp
│ │ │ │ │ ├── videostab
│ │ │ │ │ │ ├── deblurring.hpp
│ │ │ │ │ │ ├── fast_marching.hpp
│ │ │ │ │ │ ├── fast_marching_inl.hpp
│ │ │ │ │ │ ├── frame_source.hpp
│ │ │ │ │ │ ├── global_motion.hpp
│ │ │ │ │ │ ├── inpainting.hpp
│ │ │ │ │ │ ├── log.hpp
│ │ │ │ │ │ ├── motion_core.hpp
│ │ │ │ │ │ ├── motion_stabilizing.hpp
│ │ │ │ │ │ ├── optical_flow.hpp
│ │ │ │ │ │ ├── outlier_rejection.hpp
│ │ │ │ │ │ ├── ring_buffer.hpp
│ │ │ │ │ │ ├── stabilizer.hpp
│ │ │ │ │ │ └── wobble_suppression.hpp
│ │ │ │ │ └── videostab.hpp
│ │ │ │ ├── Pipeline.h
│ │ │ │ ├── PlateDetection.h
│ │ │ │ ├── PlateInfo.h
│ │ │ │ ├── PlateSegmentation.h
│ │ │ │ └── Recognizer.h
│ │ │ ├── PlateRecognition.cpp
│ │ │ └── src
│ │ │ ├── CNNRecognizer.cpp
│ │ │ ├── FastDeskew.cpp
│ │ │ ├── FineMapping.cpp
│ │ │ ├── Pipeline.cpp
│ │ │ ├── PlateDetection.cpp
│ │ │ ├── PlateSegmentation.cpp
│ │ │ ├── Recognizer.cpp
│ │ │ └── util.h
│ │ ├── java
│ │ │ └── com
│ │ │ └── frank
│ │ │ └── plate
│ │ │ ├── activity
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── PreviewActivity.java
│ │ │ ├── listener
│ │ │ │ └── OnNewFrameListener.java
│ │ │ ├── PlateRecognition.java
│ │ │ ├── thread
│ │ │ │ └── RecognizeThread.java
│ │ │ ├── util
│ │ │ │ └── ImageUtil.java
│ │ │ └── view
│ │ │ └── PlateRecognizerView.java
│ │ ├── jniLibs
│ │ │ ├── armeabi
│ │ │ │ ├── libopencv_core.a
│ │ │ │ ├── libopencv_dnn.a
│ │ │ │ ├── libopencv_flann.a
│ │ │ │ ├── libopencv_highgui.a
│ │ │ │ ├── libopencv_imgcodecs.a
│ │ │ │ ├── libopencv_imgproc.a
│ │ │ │ ├── libopencv_java3.so
│ │ │ │ ├── libopencv_objdetect.a
│ │ │ │ ├── libopencv_photo.a
│ │ │ │ └── libopencv_shape.a
│ │ │ └── armeabi-v7a
│ │ │ ├── libopencv_core.a
│ │ │ ├── libopencv_dnn.a
│ │ │ ├── libopencv_flann.a
│ │ │ ├── libopencv_highgui.a
│ │ │ ├── libopencv_imgcodecs.a
│ │ │ ├── libopencv_imgproc.a
│ │ │ ├── libopencv_java3.so
│ │ │ ├── libopencv_objdetect.a
│ │ │ ├── libopencv_photo.a
│ │ │ └── libopencv_shape.a
│ │ └── res
│ │ ├── drawable
│ │ │ └── demo.png
│ │ ├── layout
│ │ │ ├── activity_main.xml
│ │ │ └── activity_preview.xml
│ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ └── values
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test
│ └── java
│ └── com
│ └── frank
│ └── plate
│ └── ExampleUnitTest.java
├── LicenseRecognition.iml
├── local.properties
├── openCVLibrary330
│ ├── build.gradle
│ ├── lint.xml
│ ├── openCVLibrary330.iml
│ └── src
│ └── main
│ ├── aidl
│ │ └── org
│ │ └── opencv
│ │ └── engine
│ │ └── OpenCVEngineInterface.aidl
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── org
│ │ └── opencv
│ │ ├── android
│ │ │ ├── AsyncServiceHelper.java
│ │ │ ├── BaseLoaderCallback.java
│ │ │ ├── Camera2Renderer.java
│ │ │ ├── CameraBridgeViewBase.java
│ │ │ ├── CameraGLRendererBase.java
│ │ │ ├── CameraGLSurfaceView.java
│ │ │ ├── CameraRenderer.java
│ │ │ ├── FpsMeter.java
│ │ │ ├── InstallCallbackInterface.java
│ │ │ ├── JavaCameraView.java
│ │ │ ├── LoaderCallbackInterface.java
│ │ │ ├── OpenCVLoader.java
│ │ │ ├── StaticHelper.java
│ │ │ └── Utils.java
│ │ ├── calib3d
│ │ │ ├── Calib3d.java
│ │ │ ├── StereoBM.java
│ │ │ ├── StereoMatcher.java
│ │ │ └── StereoSGBM.java
│ │ ├── core
│ │ │ ├── Algorithm.java
│ │ │ ├── Core.java
│ │ │ ├── CvException.java
│ │ │ ├── CvType.java
│ │ │ ├── DMatch.java
│ │ │ ├── KeyPoint.java
│ │ │ ├── Mat.java
│ │ │ ├── MatOfByte.java
│ │ │ ├── MatOfDMatch.java
│ │ │ ├── MatOfDouble.java
│ │ │ ├── MatOfFloat4.java
│ │ │ ├── MatOfFloat6.java
│ │ │ ├── MatOfFloat.java
│ │ │ ├── MatOfInt4.java
│ │ │ ├── MatOfInt.java
│ │ │ ├── MatOfKeyPoint.java
│ │ │ ├── MatOfPoint2f.java
│ │ │ ├── MatOfPoint3f.java
│ │ │ ├── MatOfPoint3.java
│ │ │ ├── MatOfPoint.java
│ │ │ ├── MatOfRect2d.java
│ │ │ ├── MatOfRect.java
│ │ │ ├── Point3.java
│ │ │ ├── Point.java
│ │ │ ├── Range.java
│ │ │ ├── Rect2d.java
│ │ │ ├── Rect.java
│ │ │ ├── RotatedRect.java
│ │ │ ├── Scalar.java
│ │ │ ├── Size.java
│ │ │ ├── TermCriteria.java
│ │ │ └── TickMeter.java
│ │ ├── dnn
│ │ │ ├── DictValue.java
│ │ │ ├── Dnn.java
│ │ │ ├── Importer.java
│ │ │ ├── Layer.java
│ │ │ └── Net.java
│ │ ├── features2d
│ │ │ ├── AgastFeatureDetector.java
│ │ │ ├── AKAZE.java
│ │ │ ├── BFMatcher.java
│ │ │ ├── BOWImgDescriptorExtractor.java
│ │ │ ├── BOWKMeansTrainer.java
│ │ │ ├── BOWTrainer.java
│ │ │ ├── BRISK.java
│ │ │ ├── DescriptorExtractor.java
│ │ │ ├── DescriptorMatcher.java
│ │ │ ├── FastFeatureDetector.java
│ │ │ ├── Feature2D.java
│ │ │ ├── FeatureDetector.java
│ │ │ ├── Features2d.java
│ │ │ ├── FlannBasedMatcher.java
│ │ │ ├── GFTTDetector.java
│ │ │ ├── KAZE.java
│ │ │ ├── MSER.java
│ │ │ ├── ORB.java
│ │ │ └── Params.java
│ │ ├── imgcodecs
│ │ │ └── Imgcodecs.java
│ │ ├── imgproc
│ │ │ ├── CLAHE.java
│ │ │ ├── Imgproc.java
│ │ │ ├── LineSegmentDetector.java
│ │ │ ├── Moments.java
│ │ │ └── Subdiv2D.java
│ │ ├── ml
│ │ │ ├── ANN_MLP.java
│ │ │ ├── Boost.java
│ │ │ ├── DTrees.java
│ │ │ ├── EM.java
│ │ │ ├── KNearest.java
│ │ │ ├── LogisticRegression.java
│ │ │ ├── Ml.java
│ │ │ ├── NormalBayesClassifier.java
│ │ │ ├── ParamGrid.java
│ │ │ ├── RTrees.java
│ │ │ ├── StatModel.java
│ │ │ ├── SVM.java
│ │ │ ├── SVMSGD.java
│ │ │ └── TrainData.java
│ │ ├── objdetect
│ │ │ ├── BaseCascadeClassifier.java
│ │ │ ├── CascadeClassifier.java
│ │ │ ├── HOGDescriptor.java
│ │ │ └── Objdetect.java
│ │ ├── osgi
│ │ │ ├── OpenCVInterface.java
│ │ │ └── OpenCVNativeLoader.java
│ │ ├── photo
│ │ │ ├── AlignExposures.java
│ │ │ ├── AlignMTB.java
│ │ │ ├── CalibrateCRF.java
│ │ │ ├── CalibrateDebevec.java
│ │ │ ├── CalibrateRobertson.java
│ │ │ ├── MergeDebevec.java
│ │ │ ├── MergeExposures.java
│ │ │ ├── MergeMertens.java
│ │ │ ├── MergeRobertson.java
│ │ │ ├── Photo.java
│ │ │ ├── TonemapDrago.java
│ │ │ ├── TonemapDurand.java
│ │ │ ├── Tonemap.java
│ │ │ ├── TonemapMantiuk.java
│ │ │ └── TonemapReinhard.java
│ │ ├── utils
│ │ │ └── Converters.java
│ │ ├── video
│ │ │ ├── BackgroundSubtractor.java
│ │ │ ├── BackgroundSubtractorKNN.java
│ │ │ ├── BackgroundSubtractorMOG2.java
│ │ │ ├── DenseOpticalFlow.java
│ │ │ ├── DualTVL1OpticalFlow.java
│ │ │ ├── FarnebackOpticalFlow.java
│ │ │ ├── KalmanFilter.java
│ │ │ ├── SparseOpticalFlow.java
│ │ │ ├── SparsePyrLKOpticalFlow.java
│ │ │ └── Video.java
│ │ └── videoio
│ │ ├── VideoCapture.java
│ │ ├── Videoio.java
│ │ └── VideoWriter.java
│ └── res
│ └── values
│ └── attrs.xml
└── settings.gradle
93 directories, 425 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论