Alexander Alekhin
af769e4ec8
Merge pull request #12362 from alalek:fix_js_headers
2018-09-02 04:15:16 +00:00
Alexander Alekhin
70a27c7dd6
core: add solveLP type checks for output
...
to forbid Mat1f
Checks are not reliable: empty uninitialized `cv::Mat` has `CV_8UC1` type
2018-09-01 14:51:44 +00:00
Alexander Alekhin
701760dbeb
calib3d: use Mat::reserveBuffer()
instead of .create()
...
to allocate memory >2Gb
2018-09-01 13:18:08 +00:00
Alexander Alekhin
0f9f2696be
imgproc: small code refactoring (findContours -> l_cinfo)
2018-09-01 12:58:40 +00:00
Alexander Alekhin
65a0587ce8
imgproc(segmentation): don't increase mask NULL pointer
...
Avoid manual address arithmetic
2018-09-01 12:38:57 +00:00
Vadim Pisarevsky
f9c8bb40b1
Merge pull request #12350 from dkurt:dnn_ie_caffe_faster_rcnn
2018-08-31 14:57:14 +00:00
Vitaly Tuzov
0f2b535fcc
Bit-exact GaussianBlur reworked to use wide intrinsics ( #12073 )
...
* Bit-exact GaussianBlur reworked to use wide intrinsics
* Added v_mul_hi universal intrinsic
* Removed custom SSE2 branch from bit-exact GaussianBlur
* Removed loop unrolling for gaussianBlur horizontal smoothing
2018-08-31 17:04:59 +03:00
Vitaly Tuzov
e345cb03d5
Bit-exact resize reworked to use wide intrinsics ( #12038 )
...
* Bit-exact resize reworked to use wide intrinsics
* Reworked bit-exact resize row data loading
* Added bit-exact resize row data loaders for SIMD256 and SIMD512
* Fixed type punned pointer dereferencing warning
* Reworked loading of source data for SIMD256 and SIMD512 bit-exact resize
2018-08-31 16:54:05 +03:00
Alexander Alekhin
f33cbe94dd
Merge pull request #12142 from alalek:dnn_ocl_fix_convolution_perf_tests
2018-08-31 13:27:14 +00:00
berak
e13f6ded7f
ml: fix adjusting K in KNearest ( #12358 )
2018-08-31 16:07:53 +03:00
Vadim Pisarevsky
4b03a4a841
Merge pull request #12353 from alalek:imgcodecs_fix_webp
2018-08-31 13:03:10 +00:00
Vadim Pisarevsky
bab4f4f5d8
Merge pull request #12348 from take1014:subdiv_getTriangleList_5788
2018-08-31 13:01:16 +00:00
Vadim Pisarevsky
a08c6e49b3
Merge pull request #12341 from terfendail:countnonzero_wintr
2018-08-31 12:58:25 +00:00
Dmitry Kurtaev
50bceea038
Include preprocessing nodes to object detection TensorFlow networks ( #12211 )
...
* Include preprocessing nodes to object detection TensorFlow networks
* Enable more fusion
* faster_rcnn_resnet50_coco_2018_01_28 test
2018-08-31 15:41:56 +03:00
Alexander Alekhin
c557193b8c
dnn(test): use dnnBackendsAndTargets() param generator
2018-08-31 15:11:58 +03:00
Alexander Alekhin
3e6b3a6856
dnn(perf): fix and merge Convolution tests
...
- OpenCL tests didn't run any OpenCL kernels
- use real configuration from existed models (the first 100 cases)
- batch size = 1
2018-08-31 15:02:19 +03:00
Alexander Alekhin
d52cef1719
js: use generated list of OpenCV headers
...
- replaces hand-written list
2018-08-31 14:48:44 +03:00
Alexander Alekhin
0d4fd20a73
imgcodecs: add null pointer check
2018-08-31 12:56:02 +03:00
Alexander Alekhin
0515f930e8
imgcodecs(webp): multiple fixes
...
- don't reallocate passed 'img' (test fixed - must use IMREAD_UNCHANGED / IMREAD_ANYCOLOR)
- avoid memory DDOS
- avoid reading of whole file during header processing
- avoid data access after allocated buffer during header processing (missing checks)
- use WebPFree() to free allocated buffers (libwebp >= 0.5.0)
- drop unused & undefined `.close()` method
- added checks for channels >= 5 in encoder
2018-08-30 20:42:33 +00:00
Vitaly Tuzov
c894fc5bae
countNonZero function reworked to use wide universal intrinsics instead of SSE2 intrinsics
2018-08-30 20:43:39 +03:00
take1014
e1ee744e15
resolve #5788
2018-08-31 00:59:00 +09:00
Alexander Alekhin
e86287d8ae
cleanup: IPP Async (IPP_A)
...
except header file with conversion routines (will be removed in OpenCV 4.0)
2018-08-30 18:53:07 +03:00
Alexander Alekhin
4c7d521413
Merge pull request #12346 from mshabunin:test-data-check
2018-08-30 15:36:58 +00:00
Dmitry Kurtaev
ea43e28a37
Replace Slice layer to Crop in Faster-RCNN networks from Caffe
2018-08-30 17:57:08 +03:00
Vadim Pisarevsky
258a769567
Merge pull request #12327 from take1014:distanceTransform_type
2018-08-30 13:12:08 +00:00
Alexander Alekhin
7845f6d95c
Merge pull request #12345 from berak:fix_java_list_string
2018-08-30 13:04:19 +00:00
Maksim Shabunin
cecf84410c
Added option to fail on missing testdata
2018-08-30 15:15:08 +03:00
Alexander Alekhin
596a0125ed
Merge pull request #12336 from dkurt:dnn_ie_fix_net_lifetime
2018-08-30 11:09:18 +00:00
berak
72f422c7dc
java: fix LIST_GET macro
2018-08-30 13:06:02 +02:00
Wu Zhiwen
ca51bbb7ff
dnn: fix variance setting bug for PriorBoxLayer
...
- The size of second channel should be size[2] of output tensor,
- The Scalar should be {variance[0], variance[0], variance[0], variance[0]}
for _variance.size() == 1 case.
Signed-off-by: Wu Zhiwen <zhiwen.wu@intel.com>
2018-08-30 11:05:38 +08:00
Dmitry Kurtaev
4062ef5fcb
Fix lifetime of networks which are loaded from Model Optimizer IRs
2018-08-29 13:34:26 +03:00
take1014
1ae477a46d
fix typo
2018-08-28 22:14:47 +09:00
Alexander Alekhin
d13db35f31
Merge tag '3.4.3'
2018-08-28 16:03:08 +03:00
Alexander Alekhin
b38c50b3d0
OpenCV 3.4.3
2018-08-28 15:58:21 +03:00
Alexander Alekhin
50b61668e2
Merge pull request #12326 from alalek:issue_12325
2018-08-28 12:51:33 +00:00
Alexander Alekhin
1df84f7246
Merge pull request #12319 from dkurt:dnn_enable_ie_tests
2018-08-28 12:50:32 +00:00
Alexander Alekhin
af0c930e77
ts: don't pass NULL for std::string() constructor
2018-08-28 14:19:56 +03:00
Alexander Alekhin
4e0d2a3e6c
Merge pull request #12193 from alalek:fix_vaapi_sample
2018-08-27 20:56:20 +00:00
Alexander Alekhin
da6d8961fc
Merge pull request #12286 from logic1988:master
2018-08-27 19:05:23 +00:00
Dmitry Kurtaev
3e027df583
Enable more deep learning tests using Intel's Inference Engine backend
2018-08-27 18:37:35 +03:00
Alexander Alekhin
6477262e63
Merge pull request #12306 from berak:python_nmsboxes
2018-08-25 16:35:00 +00:00
Maxim Smirnov
c94d75874b
CV_Assert
s changed
...
Some `CV_Assert`s changed to `CV_Assert_N`s according to https://github.com/opencv/opencv/issues/12304
2018-08-25 14:52:27 +03:00
berak
21f3987d53
python: add support for NMSBoxes
2018-08-25 08:44:45 +02:00
Alexander Alekhin
d10a219833
Merge pull request #12298 from berak:java_matofrotatedrect
2018-08-24 15:54:27 +00:00
berak
bd7bf39b4b
java: change MatOfRotatedRect to CV_32FC5
2018-08-24 14:20:36 +02:00
Dmitry Kurtaev
472b71ecef
Merge pull request #12243 from dkurt:dnn_tf_mask_rcnn
...
* Support Mask-RCNN from TensorFlow
* Fix a sample
2018-08-24 14:47:32 +03:00
Alexander Alekhin
e8d45a9cdd
Merge pull request #12274 from alalek:fix_10945
2018-08-24 08:30:52 +00:00
Alexander Alekhin
ff2eface19
Merge pull request #12126 from alalek:reproducer_12121
2018-08-24 08:08:17 +00:00
Alexander Alekhin
29ce348c4d
Merge pull request #12287 from berak:java_matofrotatedrect
2018-08-24 07:03:13 +00:00
Hamdi Sahloul
4d78342919
Closes #12281 - a bug in cuda::pow with negative base values
2018-08-24 05:12:14 +09:00
logic1988
b47c9ac643
Update aff_trans.cpp
...
When the fullAffine parameter is set to false, the estimateRigidTransform function maybe return empty, then the _localAffineEstimate function will be called, but the bug in it will result in incorrect results.
2018-08-23 21:52:27 +08:00
berak
1c20a7f008
java: add a MatOfRotatedRect class
2018-08-23 12:01:36 +02:00
Alexander Alekhin
096366738b
dnn(build): fix CV_Assert() usage
2018-08-22 16:04:40 +03:00
Alexander Alekhin
6a6506b02d
viz: call "mapper->Update()" before and after SetInputData()
2018-08-22 15:40:51 +03:00
Alexander Alekhin
2c42361ecd
build: fix build with defined CV_STATIC_ANALYSIS
2018-08-22 14:19:21 +03:00
Alexander Alekhin
f25450791b
dnn(test): mark unstable OpenCL tests
2018-08-21 16:31:41 +03:00
Alexander Alekhin
c9faa09d55
Merge pull request #12266 from mshabunin:fix-windows-ie-build
2018-08-21 13:07:44 +00:00
Alexander Alekhin
1deeca985f
Merge pull request #12262 from sivaraam:v4l2_mainloop
2018-08-21 12:47:29 +00:00
Alexander Alekhin
6acabd1fd8
Merge pull request #12256 from alalek:core_intrin_fp16_fix
2018-08-21 12:47:08 +00:00
Alexander Alekhin
5ac9a2a7d0
Merge pull request #12219 from alalek:fix_assert_messages
2018-08-21 12:46:35 +00:00
Maksim Shabunin
808c89adc1
Fixed windows build with InferenceEngine
2018-08-21 14:59:13 +03:00
Kaartic Sivaraam
a527e8cc73
cap-v4l: remove unwanted loop in V4L2 mainloop
...
The while loop would run only once making it useless and leading
to confusion.
So, remove the unwanted while loop and just keep an infinite for
loop.
2018-08-21 16:41:01 +05:30
Colin Smith
76f47548b3
Add export macro for ios conversion functions
2018-08-20 14:10:54 -07:00
Alexander Alekhin
67d46dfc6c
core(intrin): restrict FP16 operations
...
Intrinsics must be effective, so don't declare FP16 type/operations if there is no native support.
- CV_FP16: supports load/store into/from float32
- CV_SIMD_FP16: declares FP16 types and native FP16 operations
2018-08-20 19:24:33 +03:00
Rostislav Vasilikhin
378cf2ab63
fixed filename slash processing
2018-08-20 18:02:49 +03:00
Alexander Alekhin
c6f5b013ec
Merge pull request #12242 from alalek:fix_12236
2018-08-20 13:53:27 +00:00
Alexander Alekhin
e593d5bbc5
Merge pull request #12255 from csukuangfj:patch_5
2018-08-20 13:47:41 +00:00
Kuang Fangjun
ab8ba047a5
fix a typo.
2018-08-20 15:52:18 +08:00
Kuang Fangjun
cecc19381f
fix an error in the formula for cv::cornerSubPix
2018-08-20 15:49:35 +08:00
Alexander Alekhin
6e84abc746
ml: don't use "getSubVector()" with 2D matrix
...
It is designed for 1D vectors only
2018-08-18 20:50:36 +00:00
Alexander Alekhin
322c6b1ba4
Merge pull request #12235 from alalek:core_perf_scalar_tests
2018-08-18 20:45:47 +00:00
Alexander Alekhin
73d44c7881
Merge pull request #12172 from alalek:core_move_const_table
2018-08-17 14:03:01 +00:00
Alexander Alekhin
31fef14d76
Merge pull request #12136 from sturkmen72:update_documentation
2018-08-17 14:02:20 +00:00
Alexander Alekhin
7ee69740e8
ml(test): test different samples layout of TrainData
2018-08-17 16:57:20 +03:00
Suleyman TURKMEN
c61bc3a0cb
Update documentation and samples
2018-08-17 14:21:29 +03:00
Alexander Alekhin
b24fc6954d
core(perf): fix addScalar test
...
keep the same type for passed Scalar values
2018-08-16 19:36:28 +03:00
Alexander Alekhin
828cb4286d
Merge pull request #12220 from sturkmen72:update_seamless_cloning
2018-08-16 16:26:27 +00:00
Alexander Alekhin
ee5e0e16d9
Merge pull request #12233 from mshabunin:fix-world-install-headers
2018-08-16 16:03:10 +00:00
Alexander Alekhin
b907bfe3e7
Merge pull request #12222 from NCBee:master
2018-08-16 16:02:39 +00:00
Maksim Shabunin
f84eb3dde6
Fixed core headers installation in world builds
2018-08-16 17:16:02 +03:00
Alexander Alekhin
b996b618e0
Merge pull request #12228 from tomoaki0705:fixTypoCalib3d
2018-08-16 12:29:10 +00:00
Alexander Alekhin
98c5ce9347
imgproc(test): refactor test_intersection.cpp
...
don't use legacy test API
2018-08-16 15:27:24 +03:00
Alexander Alekhin
f89defad5d
imgproc: fix rotatedRectangleIntersection()
2018-08-16 15:27:24 +03:00
Bahram Dahi
96f92c6705
imgproc(tests): intersetion calculation of RotatedRect
2018-08-16 15:00:01 +03:00
Tomoaki Teshima
f0c46a4c74
fix typo
2018-08-16 19:11:40 +09:00
Suleyman TURKMEN
860ae77ec9
Update seamless_cloning
2018-08-15 22:59:18 +03:00
Alexander Alekhin
d2e08a524e
core: repair CV_Assert() messages
...
Multi-argument CV_Assert() is accessible via CV_Assert_N() (with malformed messages).
2018-08-15 17:43:10 +03:00
Alexander Alekhin
c1df9ad456
OpenCV version++
...
OpenCV 3.4.3
2018-08-14 14:10:37 +03:00
Alexander Alekhin
781721ca50
experimental version++
2018-08-14 14:10:37 +03:00
Alexander Alekhin
b9b66ca437
Merge pull request #12205 from dkurt:dnn_update_tf_face_detection
2018-08-14 10:53:12 +00:00
Dmitry Kurtaev
f056c0f137
UINT8 face detection network using Intel's Inference Engine backend
2018-08-13 18:38:47 +03:00
Alexander Alekhin
615883977f
Merge pull request #12128 from dkurt:dnn_fix_12066
2018-08-10 14:14:16 +00:00
Alexander Alekhin
4910f16f16
core(libva): support YV12 too
...
Added to CPU path only.
OpenCL code path still expects NV12 only (according to Intel OpenCL extension)
2018-08-10 16:02:05 +03:00
Alexander Alekhin
8b2122e12f
Merge pull request #12174 from alalek:dnn_move_range_ostream_operator
2018-08-08 20:51:26 +00:00
Alexander Alekhin
f16f818f5f
Merge pull request #12184 from alalek:issue_12163
2018-08-08 20:50:54 +00:00
Alexander Alekhin
5b3ac112fe
core: move const tables outside of dispatched code
...
To avoid duplicates in binaries
2018-08-08 17:54:54 +03:00
Alexander Alekhin
a0cff0be94
imgproc(cvtColor): slightly improve error messages
...
Do not try to process empty inputs.
2018-08-08 17:16:42 +03:00
Alexander Alekhin
b00758babe
imgproc(cvtColor): temporary disable IPP for 8U GRAY2BGR mode
...
Details 12176
2018-08-08 13:58:45 +03:00
Alexander Alekhin
a56b221559
core: cv::Range() ostream write operator
...
remove from DNN module headers
2018-08-07 20:03:21 +03:00
yom
fb2b26c419
photo: Decolor corrections
...
* Keep image aspect ratio in resize called in grad_system and
weak_order
* Bug correction in loop inside Decolor::gradvector
2018-08-07 19:08:57 +03:00
Alexander Alekhin
377e51df83
Merge pull request #12169 from berak:photo_decolor
2018-08-07 16:01:42 +00:00
Alexander Alekhin
7453a6938a
core(test): extra tests/fixes for merge/split ( #12171 )
...
* core(test): merge hang test
* core(merge/split): fix intrin optimization
2018-08-07 18:11:05 +03:00
Maksim Shabunin
39f5e57321
Merge pull request #12159 from zarelaky:master
2018-08-07 13:15:19 +00:00
berak
f49f6d52b4
photo: avoid resizing a const Mat in decolor()
2018-08-07 15:14:22 +02:00
zarelaky
715f23127c
Update cap_gstreamer.cpp
...
fixed call open(int id) failed
2018-08-07 15:21:46 +03:00
Maksim Shabunin
f0f652f9e9
Merge pull request #12161 from alalek:cache_dump_neighbor_directories_for_cleanup
2018-08-07 12:09:39 +00:00
Maksim Shabunin
731aa963bd
Merge pull request #12166 from berak:fix_mjpeg_decoder
2018-08-07 12:09:13 +00:00
berak
7e353a1ec5
videoio: check iterator in mjpeg_encoder.cpp
2018-08-07 11:43:37 +02:00
Alexander Alekhin
5c3880d302
core(intrin): avoid symbols duplication from SIMD128/256 cases
...
All vx_call() must be wrapped into own simd128/simd256/simd512 namespace
```
namespace CV__SIMD_NAMESPACE {
... vx_call declaration is here ...
}
```
2018-08-06 19:29:46 +00:00
Alexander Alekhin
9eaa583bfb
core: dump neighbour cache directories (from old OpenCV versions)
...
- use '3.4.x' cache name for current maintenance series (there are no serious changes between releases)
- message is shown only once during creation of new cache directory
- use OPENCV_CACHE_SHOW_CLEANUP_MESSAGE=0 to hide this warning
2018-08-06 19:05:35 +03:00
Vadim Pisarevsky
6500700d6f
Merge pull request #12157 from allnes:detect_qr_code
2018-08-06 14:50:28 +00:00
Alexander Nesterov
f95a411ba3
Update binarization
2018-08-06 12:10:45 -03:00
Vadim Pisarevsky
7c8ab271fc
Merge pull request #12125 from dkurt:dnn_mobilenet_ppn
2018-08-06 14:40:50 +00:00
Vadim Pisarevsky
70b893333d
Merge pull request #12130 from dkurt:dnn_ie_mvn
2018-08-06 14:37:46 +00:00
Dmitry Kurtaev
449696f1e5
Enable reshape-as-shape layer from TensorFlow
2018-08-06 17:35:06 +03:00
Vadim Pisarevsky
e0c93bcf6c
Merge pull request #12082 from dkurt:dnn_ie_faster_rcnn
2018-08-06 14:28:58 +00:00
Vadim Pisarevsky
23022f3ffb
Merge pull request #12121 from maver1:amatyuko/sse2_convert_with_saturation_fix
2018-08-06 14:26:37 +00:00
Alexander Alekhin
ac4a6aad15
Merge pull request #12050 from alalek:dnn_ocl_avoid_memory_access_violation
2018-08-05 14:47:01 +00:00
Alexander Alekhin
7d7767ba42
Merge pull request #12134 from mshabunin:add-yuv420-v4l
2018-08-04 13:48:34 +00:00
Alexander Alekhin
9cb3e9abf0
Merge pull request #12135 from tompollok:3.4
...
imgproc: update cornerSubPix documentation
2018-08-04 16:02:21 +03:00
Alexander Alekhin
b4cea8d6d1
Merge pull request #12120 from alalek:core_test_intrin_dispatched
2018-08-03 17:07:17 +00:00
Alexander Alekhin
8f57fc93ec
Merge pull request #12123 from allnes:detect_qr_code
2018-08-03 16:52:26 +00:00
Alexander Alekhin
1c73e66edf
Merge pull request #12131 from alalek:issue_12083
2018-08-02 16:50:51 +00:00
tompollok
061149cbbd
imgproc: update cornerSubPix documentation
2018-08-02 18:00:43 +02:00
Maksim Shabunin
a2daf0c83c
videoio: added YUV420 format (UV order) support to v4l capture
2018-08-02 18:34:11 +03:00
Dmitry Kurtaev
be08730cd6
MVN layer using Intel's Inference Engine backend
2018-08-02 17:49:03 +03:00
Alexander Alekhin
3082ea82f9
core(merge): fix SIMD loop head processing
2018-08-02 17:23:19 +03:00
Pierre Jeambrun
5131619a1a
feat(stitching): Add Sift support for the FeaturesFinder
2018-08-02 17:22:13 +03:00
Alexander Alekhin
f2e1710dd5
core(test): regression test for 12121
2018-08-01 19:42:54 +03:00
Alexander Nesterov
05830874d7
Refactor code
2018-08-01 12:15:40 -03:00
Dmitry Kurtaev
4fb086d6c3
MobileNet-SSD v1 from TensorFlow with shared convolution weights
2018-08-01 16:16:48 +03:00
amatyuko
3ea2586a5a
Fix for SSE2 intrinsics problem in the part of saturation arithmetic processing during 32s->16u packed conversion -
...
for some big negative values less than -INT_MAX+32767 the sign of the numbers is lost due to overflow that leads to
incorrect saturation to MAX value, instead of zero.
The issue is not reproduced with CV_ENABLED_INTRINSICS=OFF
2018-08-01 16:04:08 +03:00
Alexander Alekhin
3f302cabb8
core(test): intrinsic tests for all dispatched CPU optimizations
...
- tests for both SIMD128 / SIMD256
- different dispatched + baseline(SIMD128) intrinsics
2018-08-01 13:50:42 +03:00
Dmitry Kurtaev
8e034053af
Faster-RCNN from TensorFlow on CPU with Intel's Inference Engine backend
2018-08-01 11:29:58 +03:00
luz.paz
1e1a1855ae
Source typo fixes
2018-07-31 18:44:23 +03:00
luz.paz
2003eb1b9b
Misc. typos
...
Found via `codespell -q 3 -I ../opencv-whitelist.txt --skip="./3rdparty"`
2018-07-31 18:44:23 +03:00
Alexander Alekhin
7e71b1079e
Merge pull request #12103 from alalek:ocl_fix_crash
2018-07-31 14:55:43 +00:00
Alexander Alekhin
814ebe39ae
Merge pull request #12113 from dkurt:dnn_fix_ssd_on_myriad
2018-07-31 14:55:18 +00:00
Alexander Alekhin
61c870ae09
Merge pull request #12080 from mshabunin:fix-static-3
2018-07-31 14:53:28 +00:00
Maksim Shabunin
7cf52de47e
dnn: modified IE search, R2 compatibility fixed
2018-07-31 14:48:06 +03:00
Dmitry Kurtaev
ed0e79cb61
Add missing parameter to DetectionOutput layer from Intel's Inference Engine
2018-07-31 11:37:45 +03:00
Sayed Adel
bb82cdc928
core:test Fix fp16 build if AVX2 sets as baseline
2018-07-31 10:02:20 +02:00
Alexander Alekhin
28d0e97c09
Merge pull request #12004 from mshabunin:more-asserts
2018-07-30 16:42:09 +00:00
Alexander Alekhin
5bde800ee3
Merge pull request #12088 from alalek:ocl_callback_catch_exceptions
2018-07-30 16:33:41 +00:00
Alexander Alekhin
29a1dc5719
Merge pull request #12087 from alalek:docs_videowriter_write_bgr_input
2018-07-30 16:33:23 +00:00
Alexander Alekhin
dbf3362c4d
Merge pull request #12056 from seiko2plus:coreExpandTests
2018-07-30 16:23:11 +00:00
Alexander Alekhin
c4e0f4b2b5
Merge pull request #12102 from csukuangfj:patch_3
2018-07-30 12:48:06 +00:00
Alexander Alekhin
e90e398e7a
core(ocl): do not split refcount operations / compare
...
- check result from CV_XADD() directly
- decrease urefcount after unmap() call only
2018-07-30 15:42:09 +03:00
miaow1988
2988260107
Fixed the int size overflow bug of cv::Mat.push_back().
...
Changed the type of variable *r* from int to size_t.
This change makes sure that a valid result of std::max(r + delta,
(r*3+1)/2) can be passed into the reserve function.
2018-07-30 18:36:19 +08:00
Kuang Fangjun
83039c8752
fix a typo.
2018-07-30 18:18:18 +08:00