Hướng dẫn python rotate 3d array - python xoay mảng 3d
Hiện tại, nếu tôi muốn so sánh áp lực dưới mỗi bàn chân của một con chó, tôi chỉ so sánh áp lực bên dưới mỗi ngón chân. Nhưng tôi muốn thử và so sánh những áp lực bên dưới toàn bộ bàn chân. Nhưng để làm như vậy tôi phải xoay chúng, vì vậy các ngón chân chồng lên nhau (tốt hơn). Bởi vì hầu hết các lần bàn chân trái và phải được xoay một chút bên ngoài, vì vậy nếu bạn không thể chỉ đơn giản là lên đầu cái kia. Do đó, tôi muốn xoay bàn chân, vì vậy tất cả chúng đều được căn chỉnh theo cùng một cách. Hiện tại, tôi tính toán góc quay, bằng cách nhìn lên hai ngón giữa và phía sau bằng cách sử dụng phát hiện ngón chân sau đó tôi tính toán góc giữa đường màu vàng (trục giữa màu xanh lá cây và màu đỏ) và đường màu xanh lá cây (trục trung tính) . Bây giờ tôi muốn xoay mảng sẽ xoay quanh ngón chân phía sau, sao cho các đường màu vàng và màu xanh lá cây được căn chỉnh. Nhưng làm thế nào để tôi làm điều này? Lưu ý rằng trong khi hình ảnh này chỉ là 2D (chỉ các giá trị tối đa của mỗi cảm biến), tôi muốn tính toán nó trên mảng 3D (trung bình 10x10x50). Ngoài ra, một nhược điểm của tính toán góc của tôi là nó rất nhạy cảm với phát hiện ngón chân, vì vậy nếu ai đó có một đề xuất chính xác về mặt toán học hơn để tính toán điều này, tôi đều là tai. Tôi đã thấy một nghiên cứu với các phép đo áp lực đối với con người, nơi họ sử dụng phương pháp trục quán tính hình học cục bộ, ít nhất là rất đáng tin cậy. Nhưng điều đó vẫn không giúp tôi giải thích cách xoay mảng! Nếu ai đó cảm thấy cần phải thử nghiệm, đây là một tệp với tất cả các mảng cắt lát chứa dữ liệu áp lực của mỗi chân. Để clarfiy: walk_sliced_data là một từ điển chứa ['ser_3', 'ser_2', 'sel_1', 'sel_2', 'ser_1', 'sel_3'], là tên của các phép đo. Mỗi phép đo chứa một từ điển khác, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] (ví dụ từ 'sel_1') đại diện cho các tác động được trích xuất. Xoay chức năng trong C ++rotate-matrix is an interesting new python module, which allows conversion of a matrix(2-D array) into either clockwise rotation or anti-clockwise rotation. It at present consists of only two methods. You can loop through these methods for ‘n’ number of rotations. Thao tác ma trận trong PythonKhởi tạo ma trận trong Python pip install rotate-matrix Functions1) theo chiều kim đồng hồ (): Như rõ ràng tên cho thấy, hàm này được sử dụng để xoay ma trận theo chiều kim đồng hồ.: As obviously the name suggests, this function is used to rotate the matrix clockwise.: As obviously the name suggests, this function is used to rotate the matrix clockwise.
& nbsp; & nbsp; & nbsp; ví dụ:Example:Example: Python3
[[2, 9, 1], [1, 6, 5], [3, 3, 7]]0 [[2, 9, 1], [1, 6, 5], [3, 3, 7]]3 [[2, 9, 1], [1, 6, 5], [3, 3, 7]]4 Output:Output: Output:
2) Anti_clockwise (): Chức năng này của mô-đun này xoay ma trận đã cho ngược chiều kim đồng hồ. This function of this module rotates the given matrix anti-clockwise. This function of this module rotates the given matrix anti-clockwise.
Example: Python3
[[2, 9, 1], [1, 6, 5], [3, 3, 7]]0 [[2, 9, 1], [1, 6, 5], [3, 3, 7]]3 mat 5Output:::
2) Anti_clockwise (): Chức năng này của mô-đun này xoay ma trận đã cho ngược chiều kim đồng hồ. This function of this module rotates the given matrix anti-clockwise. Sau đó đầu ra sẽ là Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước này -
Hãy cho chúng tôi xem việc thực hiện sau đây để hiểu rõ hơn - Mã ví dụ (Python)Bản thử trực tiếp class Solution(object): def rotate(self, matrix): temp_matrix = [] column = len(matrix)-1 for column in range(len(matrix)): temp = [] for row in range(len(matrix)-1,-1,-1): temp.append(matrix[row][column]) temp_matrix.append(temp) for i in range(len(matrix)): for j in range(len(matrix)): matrix[i][j] = temp_matrix[i][j] return matrix ob1 = Solution() print(ob1.rotate([[1,5,7],[9,6,3],[2,1,3]])) Đầu vào[[1,5,7],[9,6,3],[2,1,3]] Đầu ra[[2, 9, 1], [1, 6, 5], [3, 3, 7]] Cập nhật vào ngày 05 tháng 1 năm 2021 07:04:02
|