matlab 中实现读取图像上点坐标并在图片上标记点和将坐标显示出来

这篇博客介绍了如何在MATLAB中创建一个自定义的点选取工具my_ginput(),以优化图片上的点标注过程。作者通过调整ginput()的默认设置,解决了十字光标过大和线条过黑的问题,使得在黑色背景图片上也能清晰地进行点选取。此外,博客还展示了如何在图像上显示标注点并存储其坐标信息,以便后续处理。
摘要由CSDN通过智能技术生成

matlab 读取一张图片,选取图片中的特定点,标注出点的位置与坐标信息,同时存储坐标信息为之后的处理提供数据

功能:
1.读取一张图片,选取图片中的特定点数,记录下坐标信息;
在网上大多数都是用的ginput()和getpts()两个函数,getpts()标注出点太丑,而且十字光标也对眼睛不是很友好,所以采用了ginput(), 但发现十字光标太大,同时黑线太黑(我自己的图片就本来很黑,这样一来更黑了,根本看不清),改了一下源程序,复制了一个自己的my_ginput() 函数,更加的符合个人审美。
2.在图像上标注出点的位置,更知道自己标的点是否正确;

3.将点的坐标信息加入路线中;

close all;
clear; clc;

n=input( 'please input number of points n=');
pic=imread('20201106_161635.jpg');

I=imshow(pic);

loc_points=zeros(n,2);

%[x,y]=getpts;
for i=1:1:n
    
hold on;  
[x, y]=my_ginput(1);%自己修改的matlab源码一小部分

hold on;
plot(x,y,'r.')%将点在其中标记出来
 
loc_points(i,1) = x;
loc_points(i,2) = y;

str=['  X:' num2str(x') ', Y:' num2str(y')];
text(x,y,cellstr(str))

end

效果图

好的,让我想一想... 以下是一个使用 Vue 3 和 Vue CLI 实现登录的代码示例: 1. 在命令行使用 Vue CLI 创建一个新项目: ``` vue create my-login-app ``` 2. 安装所需的依赖项: ``` cd my-login-app npm install axios vue-router ``` 3. 在 src/main.js 文件引入必要的依赖项: ```javascript import Vue from 'vue' import App from './App.vue' import axios from 'axios' import VueRouter from 'vue-router' Vue.config.productionTip = false Vue.use(VueRouter) Vue.prototype.$axios = axios const routes = [ { path: '/', component: App } ] const router = new VueRouter({ routes }) new Vue({ router, render: h => h(App), }).$mount('#app') ``` 4. 在 App.vue 文件实现登录逻辑: ```html <template> <div> <h1>登录页</h1> <form @submit.prevent="login"> <div> <label for="username">用户名:</label> <input id="username" v-model="username" type="text"> </div> <div> <label for="password">密码:</label> <input id="password" v-model="password" type="password"> </div> <button type="submit">登录</button> </form> </div> </template> <script> export default { data() { return { username: '', password: '', errorMessage: '', } }, methods: { async login() { const response = await this.$axios.post('/api/login', { username: this.username, password: this.password, }) if (response.status === 200) { this.$router.push('/dashboard') } else { this.errorMessage = '用户名或密码错误' } } }, } </script> ``` 在实际使用时,你需要将上面的代码改成符合你的后端 API 接口。不要忘记在 package.json 文件配置一下代理,以便在开发模式下使用真实的 API 接口。 ``` { ..., "devServer": { "proxy": { "/api": { "target": "http://localhost:3000", "changeOrigin": true } } } } ``` 这就是一个使用 Vue 3 和 Vue CLI 实现登录的简单示例。如果你还有什么问题,我会尽力回答的。
评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值