Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
042b0a58
Commit
042b0a58
authored
Aug 09, 2016
by
k-shinotsuka
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
improve LKTrackerInvoker::operator()
parent
b34272f8
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
11 deletions
+7
-11
lkpyramid.cpp
modules/video/src/lkpyramid.cpp
+7
-11
No files found.
modules/video/src/lkpyramid.cpp
View file @
042b0a58
...
@@ -567,18 +567,14 @@ void cv::detail::LKTrackerInvoker::operator()(const Range& range) const
...
@@ -567,18 +567,14 @@ void cv::detail::LKTrackerInvoker::operator()(const Range& range) const
diff0
=
_mm_unpacklo_epi16
(
diff0
,
diff0
);
// It0 It0 It1 It1 ...
diff0
=
_mm_unpacklo_epi16
(
diff0
,
diff0
);
// It0 It0 It1 It1 ...
v00
=
_mm_loadu_si128
((
const
__m128i
*
)(
dIptr
));
// Ix0 Iy0 Ix1 Iy1 ...
v00
=
_mm_loadu_si128
((
const
__m128i
*
)(
dIptr
));
// Ix0 Iy0 Ix1 Iy1 ...
v01
=
_mm_loadu_si128
((
const
__m128i
*
)(
dIptr
+
8
));
v01
=
_mm_loadu_si128
((
const
__m128i
*
)(
dIptr
+
8
));
v10
=
_mm_mullo_epi16
(
v00
,
diff0
);
v10
=
_mm_unpacklo_epi16
(
v00
,
v01
);
v11
=
_mm_mulhi_epi16
(
v00
,
diff0
);
v11
=
_mm_unpackhi_epi16
(
v00
,
v01
);
v00
=
_mm_unpacklo_epi16
(
v10
,
v11
);
v00
=
_mm_unpacklo_epi16
(
diff0
,
diff1
);
v10
=
_mm_unpackhi_epi16
(
v10
,
v11
);
v01
=
_mm_unpackhi_epi16
(
diff0
,
diff1
);
v00
=
_mm_madd_epi16
(
v00
,
v10
);
v11
=
_mm_madd_epi16
(
v01
,
v11
);
qb0
=
_mm_add_ps
(
qb0
,
_mm_cvtepi32_ps
(
v00
));
qb0
=
_mm_add_ps
(
qb0
,
_mm_cvtepi32_ps
(
v00
));
qb1
=
_mm_add_ps
(
qb1
,
_mm_cvtepi32_ps
(
v10
));
qb1
=
_mm_add_ps
(
qb1
,
_mm_cvtepi32_ps
(
v11
));
v10
=
_mm_mullo_epi16
(
v01
,
diff1
);
v11
=
_mm_mulhi_epi16
(
v01
,
diff1
);
v00
=
_mm_unpacklo_epi16
(
v10
,
v11
);
v10
=
_mm_unpackhi_epi16
(
v10
,
v11
);
qb0
=
_mm_add_ps
(
qb0
,
_mm_cvtepi32_ps
(
v00
));
qb1
=
_mm_add_ps
(
qb1
,
_mm_cvtepi32_ps
(
v10
));
}
}
#endif
#endif
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment