Compare commits

...

3 Commits

Author SHA1 Message Date
lyf
8f5ced6be3 1 2025-12-05 13:48:14 +08:00
601e248cd6 删了垃圾文件 2025-12-05 13:43:53 +08:00
93935889e0 修改了一点参数 2025-12-05 13:27:42 +08:00
20 changed files with 9 additions and 47 deletions

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -6,7 +6,7 @@
#include <thread> #include <thread>
#include <memory> #include <memory>
#include <unistd.h> #include <unistd.h>
#include <math.h>
#include <opencv2/opencv.hpp> #include <opencv2/opencv.hpp>
#include <opencv2/tracking.hpp> #include <opencv2/tracking.hpp>
@@ -30,13 +30,13 @@ void output_control_data(const cv::Point2f* ballistic_point,
std::ostringstream send_str; std::ostringstream send_str;
// Calculate offset (based on actual image center) // Calculate offset (based on actual image center)
int ballistic_offset_x = -static_cast<int>(ballistic_point->x - img_center.x); int ballistic_offset_yaw = 1.9*-static_cast<int>(ballistic_point->x - img_center.x);
if ( abs(ballistic_offset_x) > 320){ if ( abs(ballistic_offset_yaw) > 320){
ballistic_offset_x = ( ballistic_offset_x / abs( ballistic_offset_x ) ) * 320 ; ballistic_offset_yaw = ( ballistic_offset_yaw / abs( ballistic_offset_yaw ) ) * 220 ;
} }
int ballistic_offset_y = -static_cast<int>(img_center.y - ballistic_point->y); int ballistic_offset_pitch = 1.9*-static_cast<int>(img_center.y - ballistic_point->y);
if ( abs(ballistic_offset_y) > 180 ) { if ( abs(ballistic_offset_pitch) > 180 ) {
ballistic_offset_y = ( ballistic_offset_x / abs( ballistic_offset_x ) ) * 180 ; ballistic_offset_pitch = ( ballistic_offset_pitch / abs( ballistic_offset_pitch ) ) * 180*1.9 ;
} }
// Color simplification mapping // Color simplification mapping
@@ -45,7 +45,7 @@ void output_control_data(const cv::Point2f* ballistic_point,
else if (target_color == "blue") simplified_color = "b"; else if (target_color == "blue") simplified_color = "b";
// Construct send string (original format) // Construct send string (original format)
send_str << "#s " << simplified_color << " " << std::to_string(ballistic_offset_x) << " " << std::to_string(ballistic_offset_y) << "*\n"; send_str << "#s " << simplified_color << " " << std::to_string(ballistic_offset_yaw) << " " << std::to_string(ballistic_offset_pitch) << "*\n";
// Send data // Send data
if (ttl_communicator != nullptr) { if (ttl_communicator != nullptr) {
@@ -298,9 +298,9 @@ int main(int /*argc*/, char* /*argv*/[]) {
output_control_data(display_center, target_color, ttl, img_center, use_ttl); output_control_data(display_center, target_color, ttl, img_center, use_ttl);
// Display windows // Display windows
cv::imshow("Armor Detection", frame);
cv::imshow(target_color + " Mask", mask); cv::imshow(target_color + " Mask", mask);
cv::imshow(target_color + " Only", color_only_frame); cv::imshow(target_color + " Only", color_only_frame);
cv::imshow("Armor Detection", frame);
// Exit on 'q' key press // Exit on 'q' key press
if (cv::waitKey(1) == 'q') { if (cv::waitKey(1) == 'q') {

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3

View File

@@ -1,2 +0,0 @@
[ZoneTransfer]
ZoneId=3