Snippets Collections
Credit goes to [The Markdown Guide](https://www.markdownguide.org)!

### Heading

# H1
## H2
### H3

### Bold

**bold text**

### Italic

*italicized text*

### Blockquote

> blockquote

### Ordered List

1. First item
2. Second item
3. Third item

### Unordered List

- First item
- Second item
- Third item

### Code

`code`

### Horizontal Rule

---

### Link

[Markdown Guide](https://www.markdownguide.org)

### Image

![alt text](https://www.markdownguide.org/assets/images/tux.png)

## Extended Syntax

These elements extend the basic syntax by adding additional features. Not all Markdown applications support these elements.

### Table

| Syntax | Description |
| ----------- | ----------- |
| Header | Title |
| Paragraph | Text |

### Fenced Code Block

```
{
  "firstName": "John",
  "lastName": "Smith",
  "age": 25
}
```

### Footnote

Here's a sentence with a footnote. [^1]

[^1]: This is the footnote.

### Heading ID

### My Great Heading {#custom-id}

### Definition List

term
: definition

### Strikethrough

~~The world is flat.~~

### Task List

- [x] Write the press release
- [ ] Update the website
- [ ] Contact the media
import express from 'express';
import {middleWares, formBadRequest} from 'nodejs-express-utils';
const app = express();

app.post(
    '/',
	middleWares.inputJoi(extendedJoi.object({
      id: joi.number().required(),
	  name: joi.string().optional(),
    })),
  	
    // data is the validated data returned from the inputJoi middleware
    middleWares.handleResponse((data) => {
		const {id, name} = data;
      	
      	if(!name) {
           return formBadRequest('missing-name');
        }
      	
      	
      	return {data: {}};
    }),
);
import express from 'express';
import {middleWares} from 'nodejs-express-utils';
const app = express();

app.get(
    '/',
    middleWares.handleResponse(() => {
        // your code here
    }),
);
import express from 'express';
import {middleWares, extendedJoi} from 'nodejs-express-utils';
const app = express();

app.get('/', middleWares.inputJoi(extendedJoi.object({})));
import express from 'express';
import {middleWares} from 'nodejs-express-utils';
const app = express();

app.use(middleWares.xssFilter());
import database from '../core/database';

const query = 'DELETE FROM contactUs WHERE timestamp=:timestamp';
const params = {timestamp: 1632049210};

database
    .executeQuery(query, params)
    .then((res) => console.log('res', res))
    .catch((err) => console.error('err', err));
import {MasterTableType, JoinedTablesType} from 'nodejs-express-utils';
import database from '../core/database';
import ContactUs from '../models/ContactUs';
import Person from '../models/Person';

const masterTable: MasterTableType = {
    table: ContactUs,
    tableAlias: 'c',
    columnsAlias: {userUid: 'uid'},
    reqColumns: ['id', 'userUid', 'subject'],
};

const tables: JoinedTablesType = [
    {
        table: Person,
        tableAlias: 'p',
        joinType: JOIN_TYPES.LEFT_OUTER,
        joinCondition: 'p.uid=c.userUid',
    },
];


const extraQuery = 'WHERE timestamp=:timestamp';
const params = {timestamp: 1632049210};

const customFields = ['COUNT(P.postId) AS COUNT']

database
    .executeJoin(masterTable, tables, extraQuery, params, customFields)
    .then((res) => console.log('res', res))
    .catch((err) => console.error('err', err));
import {DataTypes} from 'nodejs-express-utils';
import ContactUs from '../models/ContactUs';

// Get data from the database
const extraQuery = 'WHERE timestamp=:timestamp';
const params = {timestamp: 1631318513};
const fields = ['id', 'body'];

ContactUs.get(extraQuery, params, fields)
    .then((res) => console.log(res))
    .catch((err) => console.error(err));
import {DataTypes} from 'nodejs-express-utils';
import ContactUs from '../models/ContactUs';

const extraQuery = 'WHERE timestamp=:timestamp';
const params = {timestamp: 1631318513};

// Update data
const data = {subject: 'Issue 12134'};
ContactUs.update(data, extraQuery, params)
    .then((res) => console.log(res))
    .catch((err) => console.error(err));
import {DataTypes} from 'nodejs-express-utils';
import ContactUs from '../models/ContactUs';

// Insert data into the database
ContactUs.create({
    status: 'Pending',
    body: 'Issue',
})
    .then((res) => console.log(res))
    .catch((err) => console.error(err));
import {DataTypes} from 'nodejs-express-utils';
import database from '../core/database';

export type ContactUsType = {
    id?: number;
    body: string;
    status?: string;
};
const tableName = 'contactUs';

export default database.init<ContactUsType>(tableName, {
    id: {
        type: DataTypes.UNSIGNED,
        isEncrypted: false,
        isRequired: false,
    },
    body: {
        type: DataTypes.CHAR,
        isEncrypted: true,
        isRequired: true,
    },
    status: {
        type: DataTypes.CHAR,
        isEncrypted: false,
        isRequired: false,
    },
});
import {MySQL, MySQLConfig} from 'nodejs-express-utils';

// the key that is used for the encryption and decryption the database
const encryptionKey = '';

// Your MySQL server credentials used initialize the connection
const config: MySQLConfig = {
    host: '',
    user: '',
    password: '',
    database: '',
};
const database = new MySQL(config, encryptionKey);

export default database;
// Common.js
const {DataTypes, MySQL, extendedJoi, formBadRequest, middleWares, JOIN_TYPES} = require('nodejs-express-utils');

// Module
import {DataTypes, MySQL, extendedJoi, formBadRequest, middleWares, JOIN_TYPES} from 'nodejs-express-utils';
# configuration file for git-cliff

[changelog]
header = """
# Changelog
*All notable changes to this project will be documented in this file.*\n
"""
body = """
{% if version %}\
    ## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}\
    ## [Unreleased]
{% endif %}\
{% for group, commits in commits | group_by(attribute="group") %}
    ### {{ group | upper_first }}
    {% for commit in commits %}
        - {% if commit.breaking %}[**breaking**] {% endif %}{{ commit.message | upper_first }}\
    {% endfor %}
{% endfor %}\n
"""
trim = true
footer = """
***
*Changelog generated by [git-cliff](https://github.com/orhun/git-cliff).*
"""
[git]
conventional_commits = true
filter_unconventional = true
commit_parsers = [
    { message = "^feat", group = "Features"},
    { message = "^fix", group = "Bug Fixes"},
    { message = "^bug", group = "Bug Fixes"},
    { message = "^doc", group = "Documentation"},
    { message = "^perf", group = "Performance"},
    { message = "^app", group = "Shiny App"},
    { message = "^api", group = "API"},
    { message = "^data", group = "Data"},
    { message = "^db", group = "Database"},
    { message = "^refactor", group = "Refactor"},
    { message = "^style", group = "Styling"},
    { message = "^test", group = "Testing"},
    { message = "^chore\\(release\\): prepare for", skip = true},
    { message = "^chore", group = "Miscellaneous Tasks"},
    { body = ".*security", group = "Security"},
]
filter_commits = false
tag_pattern = "v[0-9]*"
skip_tags = "v0.1.0-beta.1"
ignore_tags = ""
topo_order = false
sort_commits = "oldest"
<h1 style="text-align: center; font-family: Verdana; font-size: 32px; font-style: normal; font-weight: bold; text-decoration: none; text-transform: none; font-variant: small-caps; letter-spacing: 3px; color: #468282; background-color: #ffffff;">Tensorflow - Help Protect the Great Barrier Reef</h1>
<h2 style="text-align: center; font-family: Verdana; font-size: 24px; font-style: normal; font-weight: bold; text-decoration: underline; text-transform: none; letter-spacing: 2px; color: navy; background-color: #ffffff;">Look-sea: Underwater img enhancement</h2>


<p align="center">
    <img src="https://i.imgur.com/tTOe7cV.png">
</p>


# 📌**Introduction:**
<!-- <h1 style="font-family: times-new-roman">📌Introduction</h1> -->
> <p style="font-family: times-new-roman">Seems like <b>Patrick</b> the Star is lost, and <b>Spongebob, Mr. Krabs, Squidward, and the others</b> need our help to find him. To help them out <b>Kaggle</b> is also trying their best and has put together a very informative dataset the dataset is created based on the places where Patrick most certainly be going, and we need to take the help of AI and computer vision and perform Object detection to find him from that dataset. We still don't know whether Patrick is lost or has left the city because of the last night's argument between him and Spongebob. Well, this will stay as a mystery until we find Patrik. Spongebob, Mr. Krabs, Squidward, and Sandy are all very concerned and doing their best to find Patrick. So let's do our best too, and get Patrick back to his friends.</p>

# 📑 **About the Notebook:**
> <p style="font-family: times-new-roman">As per the Discussion thread I posted earlier, I said that I will post the results. So, to do that Im creating this NB. The discussion thred is listed just right below. After playing with data for a bit it was clear that the images were extreamly hezzy because of the thickness of the water, and most of the data are colored in greenish blue. After seeing a Disussion thread on this, I started searching some techniques for underwater image enhancement. After sometime, I stumbled upon this repo which talks about some techiques for Underwater color restoration and color enhancement, there were total 8 methods for image color Enhancement.Don't know how important Color Restoration would be [please let me know if you think color restoration is also important] but Image Enhancement would be very much required. The mentioned techniques are,</p>

> - [8 Methods on Underwater Image Enhancement and Color Restoration, With Code](https://www.kaggle.com/c/tensorflow-great-barrier-reef/discussion/291063)

> ## ⭕ **Underwater Image Enhancement**
> > - **CLAHE**: Contrast limited adaptive histogram equalization (1994)
> > - **Fusion-Matlab**: Enhancing underwater images and videos by fusion (2012)
> > - **GC**: Gamma Correction
> > - **HE**: Image enhancement by histogram transformation (2011)
> > - **ICM**: Underwater Image Enhancement Using an Integrated Colour Model (2007)
> > - **UCM**: Enhancing the low-quality images using Unsupervised Colour Correction Method (2010)
> > - **RayleighDistribution**: Underwater image quality enhancement through composition of dual-intensity images and Rayleigh-stretching (2014)
> > - **RGHS**: Shallow-Water Image Enhancement Using Relative Global Histogram Stretching Based on Adaptive Parameter Acquisition (2018)




> > <p style="font-family: times-new-roman"> From these 8 methods I was able to perform, 4 and 3 of them are implemented in two different ways, one is done using the repo's code and the other is implemetnted by me. Results are good but not too good. Because there are papers like <b>sea-thru</b>, <b>FUnIE-GAN</b> and <b>Water-GAN</b> which yields much better results. Check about the GANs <a style="font-family: times-new-roman" href="https://github.com/xahidbuffon/FUnIE-GAN">here</a></p>

> ## 👀 **Sea-thru**:
> > <p style="font-family: times-new-roman">This is a great paper, not only because of its good results, also the way the problem is tackled. Most of the time people ends up training large model with a huge pile of data for days to get a decent result. but this paper tries to break down the problem to its core components and solves it. This paper has a extensive use of depth map. Itried to find the trained wights but it seems like its not available. the main concept this paper goes like this,</p>

> > - <p style="font-family: times-new-roman"><b><i>As a result of their research, Akkaynak and Treibitz contend that wavelengths of observed colors depend on speed, distance, and the original color of objects. As with the speed of light through water, the source hue is constant. In this case, if we know the color of an object and its distance from us, we can reverse-engineer the formula that produces the observed color.</i></b></p>


> > To know more check out these two links,
> > - Article: [Sea-Thru: Removing Water from Underwater Images](https://towardsdatascience.com/sea-thru-removing-water-from-underwater-images-935288e13f7d)
> >- Paper: [Sea-Thru: A Method for Removing Water From Underwater Images](https://openaccess.thecvf.com/content_CVPR_2019/html/Akkaynak_Sea-Thru_A_Method_for_Removing_Water_From_Underwater_Images_CVPR_2019_paper.html)
> > - Github: https://github.com/hainh/sea-thru
> > - Dataset: http://csms.haifa.ac.il/profiles/tTreibitz/datasets/sea_thru/index.html

> > <p align="center">
    <img width="600" src="https://i.postimg.cc/6qpZCTFK/sea-thru3.jpg">
</p>



> ## 🧪 **Importance of image Pre-processing:**
> > <p style="font-family: times-new-roman"> Image preprocessing in one of the most important part of a Model building pipeline. It helps to improve the quality of your image, we apply different kind of filters and methods to enhance sertain aspect of the image, may be the given image is very blurry, or may be the image in very noisy, or maybe the image size across the data is not similar, or may be the labeled data is not accurate etc. In these cases we need to use Image preprocessing to clean the data. In some cases it also helps by decreasing model training time and increasing model inference speed. One of the incredible image preprocessing that I saw, was the hair removal in the Melanoma Classification comp. </p>

> ## 🎁 **Main aim of this Notebook:**
> > - <p style="font-family: times-new-roman"> I tried doing EDA for the provided dataset. I plan to dig much dipper and understand the data in a much better way.</p>
> > - <p style="font-family: times-new-roman"> I tried different approaches to get a decent preprocessed image as mentioned above. The best preprocessed Images this Notebook offers are shown below. We will go through all the methods(except few) and then look into the working code. <b>This is certainly not my work, it is taken from <b><a href="https://www.kaggle.com/ipythonx">@M.Innat's</a></b> comment from</p></b>

> > > <li> <a href="https://www.kaggle.com/c/tensorflow-great-barrier-reef/discussion/290584#1599835">Fast underwater image enhancement for Improved Visual Perception [github+Paper]</a></li>

> > > <p align="center">
    <img src="https://i.imgur.com/wc9rY2J.png">
</p>

> > > <p align="center">
    <img src="https://i.imgur.com/ho1D0Ye.png">
</p>

> > > <p align="center">
    <img src="https://i.imgur.com/pwBNYJr.png">
</p>
<div style="background-color:rgb(250,250,250); padding:30px;box-shadow:0 1px 1px rgba(0, 0, 0, 0.2);">
    <p style="font-family:Helvetica;font-size:15px;font-weight:bold">
       Text....
    </p>
</div>
<div style="background-color:#1abc9c; padding:1px 20px 20px 20px; border-radius:5px;box-shadow: rgba(0, 0, 0, 0.25) 0px 0.0625em 0.0625em, rgba(0, 0, 0, 0.25) 0px 0.125em 0.5em, rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset;">
    <h1 style="font-family: 'Lato', sans-serif;color:white;padding-left:10px;font-size:50px">
        Heading
    </h1>
</div>

<div class="alert alert-block alert-info" style="border-radius:8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;">
    <b>&#9432; Note<br /></b> Use blue boxes (alert-info) for tips and notes.
    If it’s a note, you don’t have to include the word “Note”.
</div>
<div class="alert alert-block alert-warning" style="border-radius:8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;">
    <b>!&#x20DD; Important<br /></b> Use yellow boxes if you to underline important things.
</div>
<div class="alert alert-block alert-danger" style="border-radius:8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;">
    <b>&#9888; Warning<br /></b> In general, avoid the red boxes. These should only be
    used for actions that might cause data loss or another major issue.
</div>
<div class="alert alert-block alert-success" style="border-radius:8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;">
    <b>&#10149; See also<br /></b> Use green boxes to link to other documentation sources.
</div>
```mermaid
%% 语法示例
        gantt
        dateFormat  YYYY-MM-DD
        title 软件开发甘特图
        section 设计
        需求                      :done,    des1, 2014-01-06,2014-01-08
        原型                      :active,  des2, 2014-01-09, 3d
        UI设计                     :         des3, after des2, 5d
    未来任务                     :         des4, after des3, 5d
        section 开发
        学习准备理解需求                      :crit, done, 2014-01-06,24h
        设计框架                             :crit, done, after des2, 2d
        开发                                 :crit, active, 3d
        未来任务                              :crit, 5d
        耍                                   :2d
        section 测试
        功能测试                              :active, a1, after des3, 3d
        压力测试                               :after a1  , 20h
        测试报告                               : 48h
```
```mermaid
%% 时序图例子,-> 直线,-->虚线,->>实线箭头
  sequenceDiagram
    participant 张三
    participant 李四
    张三->王五: 王五你好吗?
    loop 健康检查
        王五->王五: 与疾病战斗
    end
    Note right of 王五: 合理 食物 <br/>看医生...
    李四-->>张三: 很好!
    王五->李四: 你怎么样?
    李四-->王五: 很好!
```
```sequence
Title: 标题:复杂使用
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象B->小三: 你好吗
小三-->>对象A: 对象B找我了
对象A->对象B: 你真的好吗?
Note over 小三,对象B: 我们是朋友
participant C
Note right of C: 没人陪我玩
```
```sequence
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象A->对象B: 你真的好吗?
```
```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st(right)->op(right)->cond
cond(yes)->io(bottom)->e
cond(no)->sub1(right)->op
```
```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st->op->cond
cond(yes)->io->e
cond(no)->sub1(right)->op
```
```mermaid
graph TD
A[方形] --> B(圆角)
    B --> C{条件a}
    C --> |a=1| D[结果1]
    C --> |a=2| E[结果2]
    F[竖向流程图]
```mermaid
graph LR
A[方形] -->B(圆角)
    B --> C{条件a}
    C -->|a=1| D[结果1]
    C -->|a=2| E[结果2]
    F[横向流程图]
```
[Airtable](https://airtable.com) is awesome.
[Link reference][1] also works.

[1]: https://daringfireball.net/projects/markdown/syntax#link
BONNIE ROTTEN
Lilly Ford
Emily Kae
whitegirlemily,south girls
joy ts
jean -marie corda
kate rich
Kate Bloom
sexy hub
Kiley Jay
Emily Willis & Sami Parker
Honey Gold
shiroutotv
Sexual Alexis
trikepatrol
Alexia Sky- big pussy
myfamilypies
girlfriend films
trans angels
vica ts
star

Sat Aug 27 2022 10:03:28 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:51:00 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:44:48 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:35:59 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:33:17 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:27:33 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:16:51 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:09:36 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 12:07:49 GMT+0000 (UTC)

#markdown
star

Sat Mar 26 2022 11:59:54 GMT+0000 (UTC)

#markdown
star

Mon Mar 21 2022 19:52:11 GMT+0000 (UTC)

#markdown
star

Mon Mar 21 2022 19:17:42 GMT+0000 (UTC)

#markdown
star

Mon Mar 21 2022 19:12:28 GMT+0000 (UTC)

#markdown
star

Mon Mar 21 2022 19:06:08 GMT+0000 (UTC)

#markdown
star

Wed Dec 15 2021 06:30:39 GMT+0000 (UTC) https://www.kaggle.com/soumya9977/learning-to-sea-underwater-img-enhancement-eda

#markdown #html
star

Thu Dec 09 2021 09:47:17 GMT+0000 (UTC)

#jupyter #markdown
star

Thu Dec 09 2021 09:46:17 GMT+0000 (UTC)

#jupyter #markdown
star

Wed Nov 10 2021 10:32:25 GMT+0000 (UTC)

#html #jupyter #markdown
star

Wed Nov 10 2021 10:32:00 GMT+0000 (UTC)

#html #jupyter #markdown
star

Wed Nov 10 2021 10:31:18 GMT+0000 (UTC)

#html #jupyter #markdown
star

Wed Nov 10 2021 10:30:02 GMT+0000 (UTC)

#html #jupyter #markdown
star

Sat Jun 05 2021 10:24:24 GMT+0000 (UTC)

#markdown
star

Mon Apr 26 2021 09:34:45 GMT+0000 (UTC)

#markdown #mermaid
star

Mon Apr 26 2021 09:34:12 GMT+0000 (UTC)

#markdown #mermaid
star

Mon Apr 26 2021 09:32:28 GMT+0000 (UTC)

#markdown #sequence
star

Mon Apr 26 2021 09:31:29 GMT+0000 (UTC)

#markdown #sequence
star

Mon Apr 26 2021 09:29:56 GMT+0000 (UTC)

#markdown #flow
star

Mon Apr 26 2021 09:25:58 GMT+0000 (UTC)

#markdown #mermaid
star

Mon Apr 26 2021 09:23:05 GMT+0000 (UTC)

#markdown #mermaid
star

Tue Mar 23 2021 15:11:56 GMT+0000 (UTC) https://support.airtable.com/hc/en-us/articles/360044741993-Markdown-syntax-for-Airtable-rich-text-formatting

#airtable #markdown
star

Thu Sep 10 2020 19:22:17 GMT+0000 (UTC)

#markdown

Save snippets that work with our extensions

Available in the Chrome Web Store Get Firefox Add-on Get VS Code extension