Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
fab419a
Update op_cuda.hpp
CSBVision Sep 20, 2024
d6fe289
imgproc: restore multiplanar conversion functions in cv::hal namespace
mshabunin Aug 21, 2024
b385767
Update drawing.cpp and test_contours.cpp
sturkmen72 Nov 24, 2024
bef3585
Merge pull request #26513 from sturkmen72:fix_for_26264
asmorkalov Nov 29, 2024
e953fcf
objdetect: fix invalid vector access in QR encoder
mshabunin Nov 26, 2024
96dab6b
Merge pull request #26532 from mshabunin:fix-qr-bitstream
asmorkalov Nov 29, 2024
6eaa774
add some functions and tests
sturkmen72 Nov 6, 2024
5f1b05a
Merge pull request #26556 from asmorkalov:FastcvHAL_1stPost
asmorkalov Dec 2, 2024
f4db63c
doc: fixed issue with doxygen 1.12
mshabunin Dec 2, 2024
89c19f1
Merge pull request #26557 from mshabunin/fix-doc-1.12
asmorkalov Dec 2, 2024
c58b6bf
Fixed several cases of unaligned pointer cast
mshabunin Nov 28, 2024
31d04f8
5x5 added for boxfilter perf tests
Dec 2, 2024
8897002
Merge pull request #26560 from savuor:rv/perf_box_5x5
asmorkalov Dec 3, 2024
03cedee
Merge pull request #26547 from mshabunin:fix-type-cast
asmorkalov Dec 3, 2024
23fcea0
Merge pull request #26563 from kallaballa:wayland_and_xkbcommon_missi…
kallaballa Dec 4, 2024
3d91d75
Merge pull request #26564 from shyama7004:improve-macos-install-docs
shyama7004 Dec 6, 2024
7edfb57
videoio(test): filter unstable GStreamer tests
alalek Dec 6, 2024
646e87c
Merge pull request #26580 from opencv-pushbot:gitee/alalek/videoio_te…
asmorkalov Dec 6, 2024
ed9d64c
Fix python re warning in gen_objc
FantasqueX Dec 6, 2024
7fbf3c1
Merge pull request #26579 from FantasqueX:fix-re-warning-1
asmorkalov Dec 6, 2024
082cd7a
Merge pull request #25691 from redhecker:gifSupport
redhecker Dec 7, 2024
acdb707
Fix typo: rename 'search_widow_size' to 'search_window_size'
shyama7004 Dec 8, 2024
1f2e7ad
Merge pull request #26591 from shyama7004:fix-typos
asmorkalov Dec 9, 2024
1db9391
Support string_view in caffe_importer
y-guyon Dec 9, 2024
3a8d7ec
Merge pull request #26524 from MurtazaSaherwala:DocumentationUpdation
MurtazaSaherwala Dec 9, 2024
0a2669d
Merge pull request #26596 from y-guyon:4.x_absl_str
asmorkalov Dec 9, 2024
4ade793
doc: upgraded for compatibility with doxygen 1.12
mshabunin Dec 9, 2024
0dfc5d4
Merge pull request #26598 from mshabunin:fix-doc-footer
asmorkalov Dec 10, 2024
d85c13b
Merge pull request #26587 from anandkaranubc:fix-nu-svc-parameter-check
anandkaranubc Dec 10, 2024
5ef0623
CI: enable AVX2 build
mshabunin Dec 10, 2024
dc8a9d5
Merge pull request #26604 from mshabunin:add-avx2-build
asmorkalov Dec 10, 2024
1d41108
Revert "CI: enable AVX2 build" (#26610)
mshabunin Dec 10, 2024
42be822
Fix normalization parameters in YOLO example to support multi-channel…
KangJialiang Dec 11, 2024
25fe85b
Fix `yoloPostProcessing`` to handle variable number of classes (nc)
KangJialiang Dec 12, 2024
71581d9
Merge pull request #26618 from KangJialiang:fix/yoloPostProcessing-va…
asmorkalov Dec 14, 2024
03f90aa
Merge pull request #26614 from KangJialiang:fix-multi-channel-mean-sc…
asmorkalov Dec 16, 2024
a4c8d31
Update KleidiCV to version 0.3.
asmorkalov Dec 13, 2024
1a1b190
Merge pull request #26623 from asmorkalov:as/kelidicv_0.3
asmorkalov Dec 16, 2024
260f511
Merge pull request #26590 from Kumataro:fix26589
Kumataro Dec 17, 2024
51ec7fe
fix build
fengyuentau Dec 17, 2024
0ca98d4
Merge pull request #26632 from fengyuentau:dnn/gelu_cann
asmorkalov Dec 17, 2024
dbb330d
Cocoa/highgui: fix leak in cvGetWindowRect_COCOA
NekoAsakura Dec 13, 2024
a8f4019
Made some pre-defined Python types optional to disable modules
asmorkalov Nov 27, 2024
e000190
Merge pull request #26490 from vrabaud:4x_calibration_base
vrabaud Dec 17, 2024
2e21e11
Fix test_exif compilation when non of JPEG, PNG, AVIF is enabled
FantasqueX Dec 17, 2024
59b9681
Remove useless -Wno-long-long option
FantasqueX Dec 17, 2024
d77abed
Merge pull request #26472 from chacha21:gpumatnd_step
chacha21 Dec 17, 2024
7ddc029
Merge pull request #26634 from FantasqueX:fix-test-exif-1
asmorkalov Dec 17, 2024
3899a06
Fix Syntax warning in ts summary.py
FantasqueX Dec 17, 2024
23f6a9e
Merge pull request #26636 from FantasqueX:fix-re-warning-2
asmorkalov Dec 18, 2024
1c28a98
Merge pull request #26617 from CodeLinaro:xuezha_2ndPost
quic-xuezha Dec 18, 2024
d369cf6
Merge pull request #26627 from warped-rudi:torch
warped-rudi Dec 18, 2024
1fe9dd0
js: add types included in bound APIs
vrabaud Dec 18, 2024
874e575
js: fix helper.js to not trigger warnings
vrabaud Dec 18, 2024
7c0c9e1
Merge pull request #26639 from vrabaud:opencv_js2
asmorkalov Dec 18, 2024
3fbaad3
Merge pull request #26624 from hanliutong:rvv-mean
hanliutong Dec 18, 2024
773bd1a
Rename Mat::clone binding because it is used in Emscripten.
vrabaud Dec 18, 2024
a628417
Fix C preprocessor stringification
vrabaud Dec 18, 2024
914a83f
Fix enum generation issues.
vrabaud Sep 13, 2024
428d931
fix typo
FantasqueX Dec 19, 2024
79d019b
Merge pull request #26640 from vrabaud:opencv_js3
vrabaud Dec 19, 2024
5cd4483
Merge pull request #26638 from vrabaud:opencv_js1
asmorkalov Dec 19, 2024
e747ed1
Merge pull request #26645 from FantasqueX:fix-typo-3
asmorkalov Dec 19, 2024
9f64f02
Merge pull request #26637 from MaximSmolskiy:fix-VideoCapture-fails-t…
MaximSmolskiy Dec 19, 2024
537a256
Merge pull request #26643 from vrabaud:js_clone_fix
asmorkalov Dec 19, 2024
59f762b
Merge pull request #26619 from CodeLinaro:adsha_2ndPost
adsha-quic Dec 19, 2024
ebf3c40
Merge pull request #26387 from sturkmen72:js-imgproc
asmorkalov Dec 19, 2024
cdad0b7
Merge pull request #26082 from mshabunin:fix-hal-cvt-functions
asmorkalov Dec 19, 2024
60d35d1
Merge pull request #26511 from sturkmen72:proposed_fix_for_21902
sturkmen72 Dec 19, 2024
d037b40
Merge pull request #26621 from CodeLinaro:apreetam_2ndPost
quic-apreetam Dec 19, 2024
5baca52
Merge pull request #26633 from asmorkalov:as/optional_python_types
asmorkalov Dec 19, 2024
3073ba2
Merge pull request #26644 from vrabaud:opencv_js2
asmorkalov Dec 19, 2024
6a0affd
Merge pull request #26147 from vrabaud:opencv_js
asmorkalov Dec 19, 2024
b53fa94
videoio: fixed writer setProperty with FFmpeg plugin
mshabunin Dec 19, 2024
8ffc4a6
Merge pull request #26652 from mshabunin:fix-ffmpeg-plugin
asmorkalov Dec 20, 2024
f3d9d56
Merge pull request #26625 from NekoAsakura:4.x
asmorkalov Dec 20, 2024
0903061
Merge pull request #25500 from alex-urm:v4l_default_image_size
alex-urm Dec 20, 2024
d9a139f
Merge pull request #25608 from sturkmen72:animated_webp_support
sturkmen72 Dec 20, 2024
aa52daf
Merge pull request #26127 from alexlyulkov:al/blob-from-images
alexlyulkov Dec 23, 2024
4efd52f
Merge pull request #26650 from FantasqueX:fix-26642
FantasqueX Dec 23, 2024
ec2208f
dnn: remove obsolete OV models tests
mshabunin Dec 23, 2024
a2ce9e1
pre: OpenCV 4.11.0 (version++)
asmorkalov Dec 23, 2024
1399672
Merge pull request #26663 from mshabunin:cleanup-dnn-ie-test
asmorkalov Dec 23, 2024
b42075f
Merge pull request #26664 from asmorkalov:update_version_4.11.0-pre
asmorkalov Dec 23, 2024
0756dbf
RISC-V: enabled intrinsics in dotProd, relaxed test thresholds
mshabunin Dec 23, 2024
f106866
Merge pull request #26666 from mshabunin:fix-rvv-tests
asmorkalov Dec 24, 2024
fe649f4
Add include chrono gstreamersource.cpp
WangWeiLin-MV Dec 16, 2024
96d6395
Merge pull request #26668 from WangWeiLin-MV:gstreamer/add-include-ch…
asmorkalov Dec 24, 2024
745a12c
Sevral fixes for FastCV handling.
asmorkalov Dec 26, 2024
e9982e8
Merge pull request #25584 from dkurt:videocapture_from_buffer
dkurt Dec 26, 2024
09892c9
fix FFmpeg wrapper build
alalek Dec 25, 2024
4c7ea70
videoio(test): re-enable FFmpeg tests on WIN32
alalek Nov 20, 2024
c64fe91
ffmpeg/4.x: update FFmpeg wrapper 2024.12
alalek Dec 26, 2024
707ab39
Merge pull request #26164 from CSBVision:patch-7
asmorkalov Dec 26, 2024
aeb7a9b
Merge pull request #26671 from asmorkalov:as/fastcv_cmake_fix
asmorkalov Dec 26, 2024
94bccbe
Merge pull request #26635 from FantasqueX:remove-no-long-long-1
asmorkalov Dec 27, 2024
b31f769
Add test cases and fix bugs in the RVV HAL.
hanliutong Dec 27, 2024
1b48eaf
Merge pull request #26672 from opencv-pushbot:gitee/alalek/update_ffm…
alalek Dec 29, 2024
9c33bae
Merge pull request #26675 from hanliutong:rvv-hal-fix
asmorkalov Dec 29, 2024
d39aae6
Merge pull request #26656 from warped-rudi:mediandk
warped-rudi Dec 30, 2024
8bc65a1
Merge pull request #25715 from sturkmen72:apng_support
sturkmen72 Dec 30, 2024
f15fa21
Speed up and reduce memory consumption for findContours
MaximSmolskiy Dec 30, 2024
d2264d5
Tune threshold to stabinlize test with Vulkan backend.
asmorkalov Dec 31, 2024
269ff8c
Merge pull request #26691 from asmorkalov:as/unstable_vkcom
asmorkalov Dec 31, 2024
c803aa2
Merge pull request #26057 from asmorkalov:as/android_16k_pages
asmorkalov Dec 31, 2024
1db9827
Merge pull request #26379 from cdcseacave:jxl_codec
cdcseacave Dec 31, 2024
4d26e16
Merge pull request #26690 from MaximSmolskiy:speed-up-and-reduce-memo…
asmorkalov Dec 31, 2024
f2878eb
fix: cast coordinates to int32 for compatibility with line function
albertoZurini Jan 1, 2025
12963ea
Fix heap buffer overflow in cv::PngDecoder::read_from_io
vrabaud Jan 2, 2025
2f0035b
Fix flaky Imgcodecs_APNG.imwriteanimation_bgcolor
vrabaud Jan 2, 2025
1281317
imgcodecs: fix EXR tests
Kumataro Jan 3, 2025
ffd0548
Merge pull request #26704 from vrabaud:imgcodecs_flaky
asmorkalov Jan 3, 2025
5e1eed5
Merge pull request #26700 from vrabaud:png_buffer_overflow
asmorkalov Jan 3, 2025
845616d
Fix integer overflow in in cv::BmpDecoder::readHeader
vrabaud Jan 2, 2025
9e8b9a0
Merge pull request #26695 from albertoZurini:py_pose_coordinates
asmorkalov Jan 3, 2025
b9505ac
core: validate OPENCV_ALGO_HINT_DEFAULT option
Kumataro Jan 3, 2025
0538e64
Fix leaks in cv:Merge pull request #26701 from vrabaud:png_leak
vrabaud Jan 3, 2025
b4d0325
GIF APNG WEBP AVIF revisions
sturkmen72 Jan 3, 2025
f65006e
Merge pull request #26699 from vrabaud:bmp_overflow
asmorkalov Jan 3, 2025
a6f72f8
Merge pull request #26698 from warped-rudi:mediandk2
warped-rudi Jan 3, 2025
ff18c9c
Merge pull request #26688 from sturkmen72:gif-png-webp-avif
asmorkalov Jan 4, 2025
3e534bb
Fix tests for ellipse fitting
MaximSmolskiy Jan 5, 2025
ad36f68
Fixed some memory leaks in PNG/APNG implementation.
asmorkalov Jan 5, 2025
3d7eb55
Merge pull request #26715 from asmorkalov:as/png_leak
asmorkalov Jan 6, 2025
904dbe9
Merge pull request #26716 from MaximSmolskiy:fix-tests-for-ellipse-fi…
asmorkalov Jan 6, 2025
2aee947
Merge pull request #26714 from sturkmen72:png
sturkmen72 Jan 6, 2025
fc994a6
Merge pull request #21407 from sensyn-robotics:feature/weighted_hough
MasahiroOgawa Jan 6, 2025
56dd9d5
Remove code duplication from tests for ellipse fitting
MaximSmolskiy Jan 6, 2025
d863873
Use RAII to avoid leaks in PNG reader.
vrabaud Jan 6, 2025
9b85ab0
Fix comment for fitEllipse Java case accurracy test
MaximSmolskiy Jan 6, 2025
0e3d71b
Remove extra /* in /**/ comment
vrabaud Jan 7, 2025
0331af0
Change article for fitEllipseDirect function
MaximSmolskiy Jan 7, 2025
d5087a2
Merge pull request #26726 from vrabaud:png_comment
asmorkalov Jan 8, 2025
4b35101
Merge pull request #26720 from vrabaud:png_leak
asmorkalov Jan 8, 2025
0dfd2b3
Merge pull request #26719 from MaximSmolskiy:remove-code-duplication-…
asmorkalov Jan 8, 2025
e34eff9
Merge pull request #26721 from MaximSmolskiy:fix-comment-for-fitEllip…
asmorkalov Jan 8, 2025
cb959b3
Fix behavior change when PNG buffer is incomplete.
vrabaud Jan 7, 2025
38b8659
Merge pull request #26729 from MaximSmolskiy:change-article-for-fitEl…
asmorkalov Jan 8, 2025
66ffeae
Merge pull request #26728 from vrabaud:png_behavior
asmorkalov Jan 8, 2025
198f238
Fixed fread size check for corrupted PNGs.
asmorkalov Jan 8, 2025
d270454
Merge pull request #26734 from asmorkalov:as/png_corrupted
asmorkalov Jan 8, 2025
31b0eee
Release 4.11.0
asmorkalov Jan 4, 2025
d744296
Merge branch 'as/release_4.11.0' into 4.x
asmorkalov Jan 8, 2025
938f89a
minor change
shyama7004 Jan 8, 2025
7e7c75e
Merge pull request #26737 from shyama7004:minor-change
asmorkalov Jan 9, 2025
0da8c76
Merge pull request #26710 from Kumataro:fix26709
asmorkalov Jan 9, 2025
bdb6a96
Merge pull request #26706 from Kumataro:fix26705
asmorkalov Jan 9, 2025
05bc484
addition of POST_BUILD
shyama7004 Jan 9, 2025
d12fa37
Merge pull request #26739 from vrabaud:png_leak
vrabaud Jan 10, 2025
68187de
Merge pull request #26741 from shyama7004:minor-update
asmorkalov Jan 10, 2025
85f9ac4
Merge pull request #26713 from homuler:fix/build-ios-framework
homuler Jan 10, 2025
f00814e
Merge pull request #26602 from shyama7004:minor-fix
shyama7004 Jan 10, 2025
97f3f39
core: fixed VSX intrinsics implementation
mshabunin Jan 10, 2025
ee86f1c
Fix remaining bugs in PNG reader
vrabaud Jan 10, 2025
bb79493
Merge pull request #26750 from mshabunin:fix-ppc64-vsx
asmorkalov Jan 11, 2025
1e31f80
Merge pull request #26748 from vrabaud:png_leak
asmorkalov Jan 11, 2025
2c2866a
Merge pull request #26738 from redhecker:fix
redhecker Jan 11, 2025
e29a70c
Merge pull request #26742 from ivashmak:fix_homography_inliers
ivashmak Jan 11, 2025
5b7b887
Photo_CalibrateDebevec.regression-fix
shyama7004 Jan 12, 2025
052b2c4
Update types inside HoughLinesProbabilistic in order to handle great …
Diego1V Jan 9, 2025
d6f60d4
Merge pull request #26757 from shyama7004:test-fix
asmorkalov Jan 13, 2025
08a8881
Merge pull request #26753 from shyama7004:RotatedMarkers
shyama7004 Jan 13, 2025
6931a4c
Merge pull request #26744 from Diego1V:fixHoughSIGSEGV
asmorkalov Jan 13, 2025
bfb54aa
Remove useless C headers
vrabaud Jan 13, 2025
342ced1
Merge pull request #26763 from vrabaud:remove_c
asmorkalov Jan 13, 2025
55a2ca5
Merge branch 4.x
asmorkalov Feb 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions 3rdparty/fastcv/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
if(HAVE_FASTCV)
set(FASTCV_HAL_VERSION 0.0.1 CACHE INTERNAL "")
set(FASTCV_HAL_LIBRARIES "fastcv_hal" CACHE INTERNAL "")
set(FASTCV_HAL_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/include" CACHE INTERNAL "")
set(FASTCV_HAL_HEADERS
"${CMAKE_CURRENT_SOURCE_DIR}/include/fastcv_hal_core.hpp"
"${CMAKE_CURRENT_SOURCE_DIR}/include/fastcv_hal_imgproc.hpp"
CACHE INTERNAL "")

file(GLOB FASTCV_HAL_FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp")

add_library(fastcv_hal STATIC ${FASTCV_HAL_FILES})

target_include_directories(fastcv_hal PRIVATE
${CMAKE_SOURCE_DIR}/modules/core/include
${CMAKE_SOURCE_DIR}/modules/imgproc/include
${FASTCV_HAL_INCLUDE_DIRS} ${FastCV_INCLUDE_PATH})

target_link_libraries(fastcv_hal PUBLIC ${FASTCV_LIBRARY})

set_target_properties(fastcv_hal PROPERTIES ARCHIVE_OUTPUT_DIRECTORY ${3P_LIBRARY_OUTPUT_PATH})

if(NOT BUILD_SHARED_LIBS)
ocv_install_target(fastcv_hal EXPORT OpenCVModules ARCHIVE DESTINATION ${OPENCV_3P_LIB_INSTALL_PATH} COMPONENT dev)
endif()

if(ENABLE_SOLUTION_FOLDERS)
set_target_properties(fastcv_hal PROPERTIES FOLDER "3rdparty")
endif()
else()
message(STATUS "FastCV is not available, disabling related HAL")
endif(HAVE_FASTCV)
43 changes: 43 additions & 0 deletions 3rdparty/fastcv/fastcv.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
function(download_fastcv root_dir)

# Commit SHA in the opencv_3rdparty repo
set(FASTCV_COMMIT "dc5d58018f3af915a8d209386d2c58c0501c0f2c")

# Define actual FastCV versions
if(ANDROID)
if(AARCH64)
message(STATUS "Download FastCV for Android aarch64")
set(FCV_PACKAGE_NAME "fastcv_android_aarch64_2024_12_11.tgz")
set(FCV_PACKAGE_HASH "9dac41e86597305f846212dae31a4a88")
else()
message(STATUS "Download FastCV for Android armv7")
set(FCV_PACKAGE_NAME "fastcv_android_arm32_2024_12_11.tgz")
set(FCV_PACKAGE_HASH "fe2d30334180b17e3031eee92aac43b6")
endif()
elseif(UNIX AND NOT APPLE AND NOT IOS AND NOT XROS)
if(AARCH64)
set(FCV_PACKAGE_NAME "fastcv_linux_aarch64_2024_12_11.tgz")
set(FCV_PACKAGE_HASH "7b33ad833e6f15ab6d4ec64fa3c17acd")
else()
message("FastCV: fastcv lib for 32-bit Linux is not supported for now!")
endif()
endif(ANDROID)

# Download Package
set(OPENCV_FASTCV_URL "https://raw.githubusercontent.com/opencv/opencv_3rdparty/${FASTCV_COMMIT}/fastcv/")

ocv_download( FILENAME ${FCV_PACKAGE_NAME}
HASH ${FCV_PACKAGE_HASH}
URL ${OPENCV_FASTCV_URL}
DESTINATION_DIR ${root_dir}
ID FASTCV
STATUS res
UNPACK
RELATIVE_URL)
if(res)
set(HAVE_FASTCV TRUE CACHE BOOL "FastCV status")
else()
message(WARNING "FastCV: package download failed!")
endif()

endfunction()
222 changes: 222 additions & 0 deletions 3rdparty/fastcv/include/fastcv_hal_core.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,222 @@
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
* SPDX-License-Identifier: Apache-2.0
*/

#ifndef OPENCV_FASTCV_HAL_CORE_HPP_INCLUDED
#define OPENCV_FASTCV_HAL_CORE_HPP_INCLUDED

#include <opencv2/core/base.hpp>

#undef cv_hal_lut
#define cv_hal_lut fastcv_hal_lut
#undef cv_hal_normHammingDiff8u
#define cv_hal_normHammingDiff8u fastcv_hal_normHammingDiff8u
#undef cv_hal_mul8u16u
#define cv_hal_mul8u16u fastcv_hal_mul8u16u
#undef cv_hal_sub8u32f
#define cv_hal_sub8u32f fastcv_hal_sub8u32f
#undef cv_hal_transpose2d
#define cv_hal_transpose2d fastcv_hal_transpose2d
#undef cv_hal_meanStdDev
#define cv_hal_meanStdDev fastcv_hal_meanStdDev
#undef cv_hal_flip
#define cv_hal_flip fastcv_hal_flip
#undef cv_hal_rotate90
#define cv_hal_rotate90 fastcv_hal_rotate
#undef cv_hal_addWeighted8u
#define cv_hal_addWeighted8u fastcv_hal_addWeighted8u
#undef cv_hal_mul8u
#define cv_hal_mul8u fastcv_hal_mul8u
#undef cv_hal_mul16s
#define cv_hal_mul16s fastcv_hal_mul16s
#undef cv_hal_mul32f
#define cv_hal_mul32f fastcv_hal_mul32f

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// @brief look-up table transform of an array.
/// @param src_data Source image data
/// @param src_step Source image step
/// @param src_type Source image type
/// @param lut_data Pointer to lookup table
/// @param lut_channel_size Size of each channel in bytes
/// @param lut_channels Number of channels in lookup table
/// @param dst_data Destination data
/// @param dst_step Destination step
/// @param width Width of images
/// @param height Height of images
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_lut(
const uchar* src_data,
size_t src_step,
size_t src_type,
const uchar* lut_data,
size_t lut_channel_size,
size_t lut_channels,
uchar* dst_data,
size_t dst_step,
int width,
int height);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// @brief Hamming distance between two vectors
/// @param a pointer to first vector data
/// @param b pointer to second vector data
/// @param n length of vectors
/// @param cellSize how many bits of the vectors will be added and treated as a single bit, can be 1 (standard Hamming distance), 2 or 4
/// @param result pointer to result output
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_normHammingDiff8u(const uchar* a, const uchar* b, int n, int cellSize, int* result);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_mul8u16u(
const uchar * src1_data,
size_t src1_step,
const uchar * src2_data,
size_t src2_step,
ushort * dst_data,
size_t dst_step,
int width,
int height,
double scale);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_sub8u32f(
const uchar *src1_data,
size_t src1_step,
const uchar *src2_data,
size_t src2_step,
float *dst_data,
size_t dst_step,
int width,
int height);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_transpose2d(
const uchar* src_data,
size_t src_step,
uchar* dst_data,
size_t dst_step,
int src_width,
int src_height,
int element_size);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_meanStdDev(
const uchar * src_data,
size_t src_step,
int width,
int height,
int src_type,
double * mean_val,
double * stddev_val,
uchar * mask,
size_t mask_step);


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// @brief Flips a 2D array around vertical, horizontal, or both axes
/// @param src_type source and destination image type
/// @param src_data source image data
/// @param src_step source image step
/// @param src_width source and destination image width
/// @param src_height source and destination image height
/// @param dst_data destination image data
/// @param dst_step destination image step
/// @param flip_mode 0 flips around x-axis, 1 around y-axis, -1 both
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_flip(
int src_type,
const uchar* src_data,
size_t src_step,
int src_width,
int src_height,
uchar* dst_data,
size_t dst_step,
int flip_mode);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// @brief Rotates a 2D array in multiples of 90 degrees.
/// @param src_type source and destination image type
/// @param src_data source image data
/// @param src_step source image step
/// @param src_width source image width
/// @If angle has value [180] it is also destination image width
/// If angle has values [90, 270] it is also destination image height
/// @param src_height source and destination image height (destination image width for angles [90, 270])
/// If angle has value [180] it is also destination image height
/// If angle has values [90, 270] it is also destination image width
/// @param dst_data destination image data
/// @param dst_step destination image step
/// @param angle clockwise angle for rotation in degrees from set [90, 180, 270]
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_rotate(
int src_type,
const uchar* src_data,
size_t src_step,
int src_width,
int src_height,
uchar* dst_data,
size_t dst_step,
int angle);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// @brief weighted sum of two arrays using formula: dst[i] = a * src1[i] + b * src2[i]
/// @param src1_data first source image data
/// @param src1_step first source image step
/// @param src2_data second source image data
/// @param src2_step second source image step
/// @param dst_data destination image data
/// @param dst_step destination image step
/// @param width width of the images
/// @param height height of the images
/// @param scalars numbers a, b, and c
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_addWeighted8u(
const uchar* src1_data,
size_t src1_step,
const uchar* src2_data,
size_t src2_step,
uchar* dst_data,
size_t dst_step,
int width,
int height,
const double scalars[3]);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_mul8u(
const uchar *src1_data,
size_t src1_step,
const uchar *src2_data,
size_t src2_step,
uchar *dst_data,
size_t dst_step,
int width,
int height,
double scale);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_mul16s(
const short *src1_data,
size_t src1_step,
const short *src2_data,
size_t src2_step,
short *dst_data,
size_t dst_step,
int width,
int height,
double scale);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int fastcv_hal_mul32f(
const float *src1_data,
size_t src1_step,
const float *src2_data,
size_t src2_step,
float *dst_data,
size_t dst_step,
int width,
int height,
double scale);

#endif
Loading
Loading