如何在 TypeOrm 中使用 getter 和 setter。
例如离开我的用户实体
export class User {
@PrimaryGeneratedColumn()
private id: number;
@Column()
@Length(4, 20)
@IsNotEmpty()
private name: string;
@Column()
@Length(4, 100)
@IsNotEmpty()
private password: string;
public getId(): number {
return this.id;
}
public getPassword(password: string): string {
return this.password;
}
public setPassword(password: string): User {
this.password = bcrypt.hashSync(password, 8);
return this;
}
public setName(name: string): User {
this.name = name;
return this;
}
}
Run Code Online (Sandbox Code Playgroud)
我使用 orm 版本 0.2.7
我正在尝试使用 OCR 从图片中提取数据。我在 C++ 中使用 Tesseract API 来实现这一点。
原图是这样的:
现在对我来说重要的数据是这样的:
然而,无论我尝试什么,永远不会识别标记的蓝线。
用tesseract分析图片的代码是这样的:
std::string readFromFile(const std::string& filename)
{
tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
api->SetPageSegMode(tesseract::PSM_AUTO);
if (api->Init("folder_to_tessdata", "deu+eng")) {
fprintf(stderr, "Could not initialize tesseract.\n");
exit(1);
}
// Open input image with leptonica library
Pix *image = pixRead(filename.c_str());
api->SetImage(image);
// Get OCR result
char *outText = api->GetUTF8Text();
std::string result{ outText };
api->End();
delete[] outText;
pixDestroy(&image);
return result;
}
Run Code Online (Sandbox Code Playgroud)
我试图通过预处理图像来提高准确性,就像这个问题中建议的那样:图像处理以提高 tesseract OCR 准确性
预处理代码:
cv::Mat image;
image = cv::imread(filename, cv::IMREAD_COLOR);
cv::resize(image, image, cv::Size{}, …Run Code Online (Sandbox Code Playgroud) 我们正在尝试使用 CompanionDeviceManager 类将我们的 BLE 设备与我们的 Android(版本 10)手机配对,而无需位置许可。
出于测试目的,我们在测试设备周围激活了多部手机和 ble 设备的蓝牙。
我们正在使用官方网站上的示例代码,但没有成功。
将这些代码添加到 AndroidManifest 文件中:
<uses-feature android:name="android.hardware.bluetooth"/>
<uses-feature android:name="android.software.companion_device_setup"/>
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
Run Code Online (Sandbox Code Playgroud)
MainActivity 的完整代码:
public class MainActivity extends AppCompatActivity {
private CompanionDeviceManager deviceManager;
private AssociationRequest pairingRequest;
private BluetoothDeviceFilter deviceFilter;
private static final int SELECT_DEVICE_REQUEST_CODE = 42;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.e("ArkSigner", "onCreate called.");
deviceManager = getSystemService(CompanionDeviceManager.class);
// To skip filtering based on name and supported feature flags (UUIDs),
// don't include calls …Run Code Online (Sandbox Code Playgroud) 如果我有以下
#include <vector>
class C
{
public:
C()
:
m_d(new int)
{
*m_d = 2;
}
~C()
{
delete m_d;
}
int* m_d;
};
int main()
{
std::vector<char> data;
data.resize(sizeof(C));
C* newC = new(&data[0]) C;
C* cAgain = reinterpret_cast<C*>(&data[0]);
cAgain->~C();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
究竟会发生什么?当std::vector<char>销毁时,它是否释放了两次内存?如果没有,为什么没有?如果有,你会如何预防?
import cv2
image_counter = 0
video = cv2.VideoCapture(0)
while True:
check, frame = video.read()
gray_f = cv2.flip(frame, 1)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
gray_flip = cv2.flip(frame, 1)
cv2.imshow("kara", gray_flip)
key = cv2.waitKey(1)
if key == ord('q'):
break
video.release()
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)
我已经编写了这段代码,用于使用 OpenCV python 3 使用我的相机,它之前工作过,但在我升级我的 python 后,它出现以下错误:-
[ WARN:0] global C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-j8nxabm_\opencv\modules\videoio\src\cap_msmf.cpp (682) CvCapture_MSMF::initStream 设置失败mediaType (stream 0, (640x480 @ 30) MFVideoFormat_RGB24(不支持的媒体类型)
Python version:3.8.5 x64
OpenCV version: 4.4.0.42
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 OpenCV 创建一个空白图像(稍后将被填充),但它必须与作为新图像的预定义图像具有相同的大小。我尝试了以下代码:
(图片为显示成功的lena图片)
Mat lena1(Size(image.cols,image.rows),CV_8UC1);
namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
//imshow( "Display Image", image );
imshow("blank", lena1);
Run Code Online (Sandbox Code Playgroud)
但出于某种原因,它仍然显示“图像”而不是 lena1(那将是与预定义图像大小相同的空白图像)。
谢谢!
我\xe2\x80\x99m 目前正在使用具有鱼眼的相机(虽然不多,但仍然如此),并且我\xe2\x80\x99m 试图使其不失真。
\n作为初学者:我\xe2\x80\x99m对opencv不太熟悉,我\xe2\x80\x99m在尝试做任何事情时总是在文档中。(和/或在这里寻找我的问题的答案)。
\n所以我在网上看到了一些例子,我尝试了解决方案并得到了一些结果。
\n这是我发现的:
\nDIM=(1094, 729)\nK=np.array([\n [1307.2807020496643, 0.0, 530.3754311563506], \n [0.0, 1318.342691460933, 354.98352268131123], \n [0.0, 0.0, 1.0]\n])\nD=np.array([\n [-0.2994762856767568],\n [0.5036082961388784],\n [-4.231072729639434],\n [3.8646397788794578]\n])\ndef undistort(img_path): \n img = cv2.imread(img_path)\n h,w = img.shape[:2]\n print(K)\n print(D)\n print(np.eye(3))\n print(DIM)\n map1, map2 = cv2.fisheye.initUndistortRectifyMap(K, D, np.eye(3), K, DIM, cv2.CV_16SC2)\n \n undistorted_img = cv2.remap(img, map1, map2, interpolation=cv2.INTER_LINEAR, borderMode=cv2.BORDER_CONSTANT)\n cv2.imshow("undistorted", undistorted_img)\n cv2.imwrite("test.jpg", undistorted_img)\n cv2.waitKey(0)\n cv2.destroyAllWindows()\n \nif __name__ == \'__main__\':\n for p in sys.argv[1:]:\n undistort(p)\nRun Code Online (Sandbox Code Playgroud)\n这是我用来消除图像失真的 python 脚本。顶部的数据(K 和 D)是通过另一个脚本生成的。我没有\xe2\x80\x99t 提到它,因为我有一个 C++ 翻译,对于相同的基本图片显示相同的结果 …
我正在尝试计算棋盘游戏图像中的形状数量。出于某种原因,计数完全关闭。
我一直在使用网络上的代码(例如,https://www.pyimagesearch.com/2016/02/01/opencv-center-of-contour/)
我只需要 opencv 来解决这个问题,有没有其他人遇到过这个问题,我如何将其限制为我感兴趣的方块?
opencv ×5
c++ ×4
python ×2
android ×1
bluetooth ×1
destructor ×1
fisheye ×1
image ×1
javascript ×1
ocr ×1
opencv4 ×1
python-3.x ×1
tesseract ×1
typeorm ×1
vector ×1