mirror of
https://github.com/opencv/opencv.git
synced 2026-07-29 23:33:05 +04:00
Merge branch 4.x
This commit is contained in:
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == 'sdk_path') {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == 'maven_local' || gradle.opencv_source == 'maven_cenral') {
|
||||
} else if (gradle.opencv_source == 'maven_local' || gradle.opencv_source == 'maven_central') {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
android:exported="true"
|
||||
android:name="FaceDetectActivity"
|
||||
android:label="@string/app_name"
|
||||
android:screenOrientation="landscape"
|
||||
android:configChanges="keyboardHidden|orientation">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
+3
-2
@@ -184,8 +184,9 @@ public class FaceDetectActivity extends CameraActivity implements CvCameraViewLi
|
||||
|
||||
mRgba = inputFrame.rgba();
|
||||
|
||||
if (mInputSize == null) {
|
||||
mInputSize = new Size(Math.round(mRgba.cols()/mScale), Math.round(mRgba.rows()/mScale));
|
||||
Size inputSize = new Size(Math.round(mRgba.cols()/mScale), Math.round(mRgba.rows()/mScale));
|
||||
if (mInputSize == null || !mInputSize.equals(inputSize)) {
|
||||
mInputSize = inputSize;
|
||||
mFaceDetector.setInputSize(mInputSize);
|
||||
}
|
||||
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -30,7 +29,7 @@ dependencies {
|
||||
//implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
android:exported="true"
|
||||
android:name="Tutorial1Activity"
|
||||
android:label="@string/app_name"
|
||||
android:screenOrientation="landscape"
|
||||
android:configChanges="keyboardHidden|orientation">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
@@ -27,13 +26,13 @@
|
||||
android:largeScreens="true"
|
||||
android:anyDensity="true" />
|
||||
|
||||
//! [camera_permissions]
|
||||
<!--[camera_permissions]-->
|
||||
<uses-permission android:name="android.permission.CAMERA"/>
|
||||
|
||||
<uses-feature android:name="android.hardware.camera" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.camera.front" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.camera.front.autofocus" android:required="false"/>
|
||||
//! [camera_permissions]
|
||||
<!--[camera_permissions]-->
|
||||
|
||||
</manifest>
|
||||
|
||||
@@ -33,7 +33,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -44,7 +43,7 @@ android {
|
||||
}
|
||||
}
|
||||
buildFeatures {
|
||||
if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
prefab true
|
||||
}
|
||||
}
|
||||
@@ -55,7 +54,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -31,7 +30,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -35,7 +35,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -46,7 +45,7 @@ android {
|
||||
}
|
||||
}
|
||||
buildFeatures {
|
||||
if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
prefab true
|
||||
}
|
||||
}
|
||||
@@ -57,7 +56,7 @@ dependencies {
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
println 'Using OpenCV from SDK'
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
println 'Using OpenCV from Maven repo'
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ android {
|
||||
sourceSets {
|
||||
main {
|
||||
java.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
aidl.srcDirs = @ANDROID_SAMPLE_JAVA_PATH@
|
||||
res.srcDirs = @ANDROID_SAMPLE_RES_PATH@
|
||||
manifest.srcFile '@ANDROID_SAMPLE_MANIFEST_PATH@'
|
||||
}
|
||||
@@ -30,7 +29,7 @@ dependencies {
|
||||
//implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
if (gradle.opencv_source == "sdk_path") {
|
||||
implementation project(':opencv')
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_cenral") {
|
||||
} else if (gradle.opencv_source == "maven_local" || gradle.opencv_source == "maven_central") {
|
||||
implementation 'org.opencv:opencv:@OPENCV_VERSION_PLAIN@'
|
||||
}
|
||||
}
|
||||
|
||||
+9
-3
@@ -2,6 +2,8 @@
|
||||
#include <opencv2/core.hpp>
|
||||
#include <opencv2/imgcodecs.hpp>
|
||||
|
||||
#define PARALLEL_FOR_LAMBDA
|
||||
|
||||
using namespace std;
|
||||
using namespace cv;
|
||||
|
||||
@@ -33,6 +35,8 @@ int mandelbrotFormula(const complex<float> &z0, const int maxIter=500) {
|
||||
}
|
||||
//! [mandelbrot-grayscale-value]
|
||||
|
||||
#ifndef PARALLEL_FOR_LAMBDA
|
||||
|
||||
//! [mandelbrot-parallel]
|
||||
class ParallelMandelbrot : public ParallelLoopBody
|
||||
{
|
||||
@@ -71,6 +75,8 @@ private:
|
||||
};
|
||||
//! [mandelbrot-parallel]
|
||||
|
||||
#endif // !PARALLEL_FOR_LAMBDA
|
||||
|
||||
//! [mandelbrot-sequential]
|
||||
void sequentialMandelbrot(Mat &img, const float x1, const float y1, const float scaleX, const float scaleY)
|
||||
{
|
||||
@@ -102,7 +108,7 @@ int main()
|
||||
|
||||
double t1 = (double) getTickCount();
|
||||
|
||||
#ifdef CV_CXX11
|
||||
#ifdef PARALLEL_FOR_LAMBDA
|
||||
|
||||
//! [mandelbrot-parallel-call-cxx11]
|
||||
parallel_for_(Range(0, mandelbrotImg.rows*mandelbrotImg.cols), [&](const Range& range){
|
||||
@@ -121,14 +127,14 @@ int main()
|
||||
});
|
||||
//! [mandelbrot-parallel-call-cxx11]
|
||||
|
||||
#else
|
||||
#else // PARALLEL_FOR_LAMBDA
|
||||
|
||||
//! [mandelbrot-parallel-call]
|
||||
ParallelMandelbrot parallelMandelbrot(mandelbrotImg, x1, y1, scaleX, scaleY);
|
||||
parallel_for_(Range(0, mandelbrotImg.rows*mandelbrotImg.cols), parallelMandelbrot);
|
||||
//! [mandelbrot-parallel-call]
|
||||
|
||||
#endif
|
||||
#endif // PARALLEL_FOR_LAMBDA
|
||||
|
||||
t1 = ((double) getTickCount() - t1) / getTickFrequency();
|
||||
cout << "Parallel Mandelbrot: " << t1 << " s" << endl;
|
||||
|
||||
+8
-4
@@ -4,6 +4,8 @@
|
||||
#include <opencv2/imgproc.hpp>
|
||||
#include <opencv2/highgui.hpp>
|
||||
|
||||
#define PARALLEL_FOR_LAMBDA
|
||||
|
||||
using namespace std;
|
||||
using namespace cv;
|
||||
|
||||
@@ -47,7 +49,8 @@ void conv_seq(Mat src, Mat &dst, Mat kernel)
|
||||
}
|
||||
//! [convolution-sequential]
|
||||
|
||||
#ifdef CV_CXX11
|
||||
#ifdef PARALLEL_FOR_LAMBDA
|
||||
|
||||
void conv_parallel(Mat src, Mat &dst, Mat kernel)
|
||||
{
|
||||
int rows = src.rows, cols = src.cols;
|
||||
@@ -118,7 +121,8 @@ void conv_parallel_row_split(Mat src, Mat &dst, Mat kernel)
|
||||
});
|
||||
//! [convolution-parallel-cxx11-row-split]
|
||||
}
|
||||
#else
|
||||
|
||||
#else // PARALLEL_FOR_LAMBDA
|
||||
|
||||
//! [convolution-parallel]
|
||||
class parallelConvolution : public ParallelLoopBody
|
||||
@@ -235,7 +239,7 @@ void conv_parallel_row_split(Mat src, Mat &dst, Mat kernel)
|
||||
//! [convolution-parallel-function-row]
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif // PARALLEL_FOR_LAMBDA
|
||||
|
||||
static void help(char *progName)
|
||||
{
|
||||
@@ -329,4 +333,4 @@ int main(int argc, char *argv[])
|
||||
// imwrite("dst.png", dst);
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -59,12 +59,12 @@ int main(int,char**)
|
||||
cout << "C = " << endl << " " << C << endl << endl;
|
||||
//! [comma]
|
||||
// do the same with initializer_list
|
||||
#ifdef CV_CXX11
|
||||
|
||||
//! [list]
|
||||
C = (Mat_<double>({0, -1, 0, -1, 5, -1, 0, -1, 0})).reshape(3);
|
||||
cout << "C = " << endl << " " << C << endl << endl;
|
||||
//! [list]
|
||||
#endif
|
||||
|
||||
//! [clone]
|
||||
Mat RowClone = C.row(1).clone();
|
||||
cout << "RowClone = " << endl << " " << RowClone << endl << endl;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include <opencv2/imgproc.hpp>
|
||||
#include <opencv2/highgui.hpp>
|
||||
|
||||
#if defined(CV_CXX11) && defined(HAVE_THREADS)
|
||||
#if defined(HAVE_THREADS)
|
||||
#define USE_THREADS 1
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user